PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Not a GLOB reference at - Was bedeutet das?



Eagle
20-08-2009, 08:06
Hallo,

ich versuche auf einem Debian Lenny OTRS 2.3.4 so einzurichten, daß direkt an einen Mailaccount versandte Mails im Ticketsystem in der richtigen Warteschlange landen.
Dazu gibt es unter OTRS ein Perlscript "PostMasterMailbox.pl", das die Mailaccounts abruft und die Mails an OTRS übergibt. Wenn ich das Script auf der Shell manuell aufrufe

./usr/share/otrs/bin/PostMasterMailbox.pl
dann bekomme ich eine Fehlermeldung

Not a GLOB reference at /usr/share/perl5/Mail/Internet.pm line 33, <GEN0> line 56.
Die Datei Internet.pm sieht im Bereich 28-47 so aus


my $head = $self->head;
$head->fold_length(delete $opt{FoldLength} || 79);
$head->mail_from($opt{MailFrom}) if exists $opt{MailFrom};
$head->modify(exists $opt{Modify} ? $opt{Modify} : 1);

if(!defined $arg) { }
elsif(ref($arg) eq 'ARRAY')
{ $self->header($arg) unless exists $opt{Header};
$self->body($arg) unless exists $opt{Body};
}
elsif(defined fileno($arg))
{ $self->read_header($arg) unless exists $opt{Header};
$self->read_body($arg) unless exists $opt{Body};
}
else
{ croak "couldn't understand $arg to Mail::Internet constructor";
}

$self;
}

Was besagt die obige Fehlermeldung? Und was kann ich da machen? Möglicherweise fehlt mir zu der Perl-Installation (perl, v5.10.0 ), z der Internet.pm gehört, noch irgendetwas.

Für Hinweise und Tips aus eueren Reihen bin ich dankbar.

Viele Grüße

Eagle

lexa
07-09-2009, 21:07
Hi,


Wenn ich das Script auf der Shell manuell aufrufe [...] dann bekomme ich eine Fehlermeldung
Normalerweise wird es ja als cronjob aufgerufen. Kriegst du da keine Fehler? Sind wir auf einem Linux Server? Was steht im Mail-Log?


Was besagt die obige Fehlermeldung? Und was kann ich da machen? Möglicherweise fehlt mir zu der Perl-Installation (perl, v5.10.0 ), z der Internet.pm gehört, noch irgendetwas.

Was der Fehler besagt, kann man nicht ad hoc sagen. Aber falls Du die OTRS Installation und die notwendigen Perl-Module testen willst, geh auf die Console, wechsle in das OTRS Verzeichnis und rufe otrs.checkModules auf, z.B. so:

# cd /opt/otrs/bin
# ./otrs.checkModules

Du kriegst dann eine Liste mit "ok" dahinter. Wenn das "ok" fehlt, dann kann es ein optionales Modul sein (z.B. LDAP, PDF) -> "not installed... (not required)" oder es fehlt wirklich was.

Manchmal sind es auch inkompatible Perl Module, ist mir mit "Net::DNS" selbst schon passiert. Oder mit IMAP, siehe dort:
http://www.otrs-forum.de/viewtopic.php?f=31&t=3565

Gruss - lexa

Eagle
08-09-2009, 07:42
Hallo,

bei
# ./otrs.checkModules

war auch alles OK. Inzwischen hatte sich das geklärt, denn ein anderer ORTS-Anwender hatte ein ähnliches Problem, das an dem Perl-Modul Net::IMAP lag.
Ein Austausch hat auch bei mir geholfen.

Grüße

Eagle