OTRS 3.3.5 AJAX Internal Server Error

Hilfe zu Znuny Problemen aller Art
Locked
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Hallo Leute,

ich bin hier gerade dabei das neue OTRS zu testen, damit wir irgendwann mal von 2.4.9 umsteigen können.

Soweit so gut, also erster Test opensuse 12.3 installiert, das rpm bei OTRS heruntergeladen installiert und eingerichtet.

Problem nun:
Sobald ich die Config.pm auf unser ADS Backend umstelle bekomme ich den angehängten Fehler, wenn ich bei einem Telefon-Ticket einen Customer suche und auswähle! Wenn ich die Fehler (2xhintereinander) mit OK bestätige kann ich ganz normal das Ticket erstellen und er zieht mir alle benötigten Daten aus der ADS. Nach langem probieren habe ich auch festgestellt, dass die Kundeninformation auf der rechten Seite leer bleibt. Also ab in die Config.pm und dort nochmal alles überprüft und Tests gemacht..... Ergebnis: sobald ich bei UserLogin -- Username -- sAMAccountName eintrage wirft er mir die Fehler aus. Lasse ich die Zeile auskommentiert kommen die Fehler nicht, Kundeninfo bleibt leer! Zum Gegentest auf DB umgestellt und einen Kunden angelegt, hier geht alles einwandfrei inkl. Kundeninfo anzeigen lassen direkt beim Auswählen des Kunden.

OK, vielleicht liegt es an meiner Kiste, also die Appliance heruntergeladen und installiert. Selbes Problem andere Perl-Module. Auch die Möglichkeit JSON abzuändern hatte ich schon erwogen, doch wenn es mit dem lokalen DB Backend geht, wieso nicht mit dem ADS Backend?

Fazit: Es liegt am Eintrag für den UserLogin, doch das ist ja wirklich mein sAMAccountName und den brauche ich ja um den Benutzer eindeutig in der ADS benennen zu können. Unter 2.4.9 läuft die angehängte Config.pm einwandfrei, nur unter 3.3.5 (eine andere Version habe ich noch nicht probiert) geht es nicht.

Hier noch meine Config.pm (Servernamen und OUs etc. sind herausgenommen!)

# ---------------------------------------------------- #
# insert your own config settings "here" #
# config settings taken from Kernel/Config/Defaults.pm #
# ---------------------------------------------------- #
# $Self->{SessionUseCookie} = 0;
# $Self->{CheckMXRecord} = 0;

# Agent Auth.
$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = 'DC1';
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=blubb,dc=blah';
$Self->{'AuthModule::LDAP::UID'} = 'samaccountname';
$Self->{'AuthModule::LDAP::SearchUserDN'} = USER';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'PW';
# Fallback Server
$Self->{'AuthModule2'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host2'} = 'DC2';
$Self->{'AuthModule::LDAP::BaseDN2'} = 'dc=blubb,dc=blah';
$Self->{'AuthModule::LDAP::UID2'} = 'samaccountname';
$Self->{'AuthModule::LDAP::SearchUserDN2'} = 'USER';
$Self->{'AuthModule::LDAP::SearchUserPw2'} = 'PW';


# Customer Auth. DB
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::DB';
$Self->{'Customer::AuthModule::DB::Table'} = 'customer_user';
$Self->{'Customer::AuthModule::DB::CustomerKey'} = 'login';
$Self->{'Customer::AuthModule::DB::CustomerPassword'} = 'pw';
# Customer Auth. ADS
$Self->{'Customer::AuthModule2'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host2'} = 'DC1';
$Self->{'Customer::AuthModule::LDAP::BaseDN2'} = 'dc=blubb,dc=blah';
$Self->{'Customer::AuthModule::LDAP::UID2'} = 'samaccountname';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN2'} = 'USER';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw2'} = 'PW';
# Fallback Server
$Self->{'Customer::AuthModule3'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host3'} = 'DC2';
$Self->{'Customer::AuthModule::LDAP::BaseDN3'} = 'dc=blubb,dc=blah';
$Self->{'Customer::AuthModule::LDAP::UID3'} = 'samaccountname';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN3'} = 'USER';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw3'} = 'PW';


# Ticket::Frontend::CustomerInfo*
# (show customer info on Compose (Phone and Email), Zoom and
# Queue view)
$Self->{'Ticket::Frontend::CustomerInfoCompose'} = 1;
$Self->{'Ticket::Frontend::CustomerInfoZoom'} = 1;


# CustomerUser
# (customer ldap backend and settings)
$Self->{CustomerUser} = {
Name => 'ADS Backend',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => 'DC1',
# ldap base dn
BaseDN => 'dc=blubb,dc=blah',
# search scope (one|sub)
SSCOPE => 'sub',
# The following is valid but would only be necessary if the
# anonymous user does NOT have permission to read from the LDAP tree
UserDN => 'CN=USER,OU=USERKONTEN,OU="SYSTEMS",DC=blubb,DC=blah',
UserPw => 'PW',
# in case you want to add always one filter to each ldap query, use
# this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
AlwaysFilter => '(&(mail=*)(objectClass=person))',
# if both your frontend and your LDAP are unicode, use this:
SourceCharset => 'utf-8',
DestCharset => 'utf-8',
Die => 0,
# if your frontend is unicode and the charset of your
# ldap server is iso-8859-1, use these options.
# SourceCharset => 'iso-8859-1',
# DestCharset => 'utf-8',
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
Params => {
port => 389,
timeout => 120,
async => 0,
version => 3,
},
},
# customer unique id
CustomerKey => 'sAMAccountName',
# customer #
CustomerID => 'businessCategory',
CustomerUserListFields => ['cn', 'mail'],
CustomerUserSearchFields => ['sAMAccountName', 'sn', 'mail'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 250,
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['generationQualifier', 'givenname', 'sn'],
# show not own tickets in customer panel, CompanyTickets
CustomerUserExcludePrimaryCustomerID => 0,
# add an ldap filter for valid users (expert setting)
# CustomerUserValidFilter => '(!(description=locked))',
# administrator can't change customer preferences
AdminSetPreferences => 1,
# # cache time to live in sec. - cache any database queries
CacheTTL => 0,
Map => [
# note: Login, Email and CustomerID are mandatory!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
[ 'UserSalutation', 'Title', 'generationQualifier', 1, 0, 'var', '', 0 ],
[ 'UserFunction', 'Funktion', 'title', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 0 ],
# [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', 'http://www.google.de/search?hl=de&q=$Data{"UserLastname"}', 0 ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
[ 'UserCompany', 'Company', 'company', 1, 1, 'var', '', 0 ],
[ 'UserCategory', 'Amt', 'businessCategory', 1, 0, 'var', '', 0 ],
[ 'UserDepartment', 'Abteilung', 'department', 1, 1, 'var', '', 0 ],
[ 'UserOffice', 'Zimmer', 'physicalDeliveryOfficeName', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'sAMAccountName', 1, 1, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
[ 'UserCustomerID', 'CustomerID', 'businessCategory', 0, 1, 'var', '', 0 ],
# [ 'UserCustomerIDs', 'CustomerIDs','second_customer_ids', 1, 0, 'var', '', 0 ],
[ 'UserPhone', 'Durchwahl', 'telephonenumber', 1, 0, 'var', '', 0 ],
[ 'UserStreetAddress', 'Straße', 'streetAddress', 1, 0, 'var', '', 0 ],
[ 'UserPostalCode', 'PLZ', 'postalCode', 1, 0, 'var', '', 0 ],
[ 'UserCity', 'Ort', 'l', 1, 0, 'var', '', 0 ],
[ 'UserComment', 'PC', 'managedObjects', 1, 0, 'var', '', 0 ],

],


};

# CustomerUser
# (customer user database backend and settings)
$Self->{CustomerUser2} = {
Name => 'Database Backend',
Module => 'Kernel::System::CustomerUser::DB',
Params => {
Table => 'customer_user',
},
# customer uniq id
CustomerKey => 'login',
# customer #
CustomerID => 'customer_id',
CustomerValid => 'valid_id',
CustomerUserListFields => ['first_name', 'last_name', 'email'],
CustomerUserSearchFields => ['login', 'first_name', 'last_name', 'customer_id'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 250,
CustomerUserPostMasterSearchFields => ['email'],
CustomerUserNameFields => ['salutation', 'first_name', 'last_name'],
CustomerUserEmailUniqCheck => 1,
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
[ 'UserSalutation', 'Salutation', 'salutation', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'first_name', 1, 1, 'var', '', 0 ],
[ 'UserLastname', 'Lastname', 'last_name', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'login', 1, 1, 'var', '', 0 ],
[ 'UserPassword', 'Password', 'pw', 0, 0, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'email', 0, 1, 'var', '', 0 ],
# [ 'UserEmail', 'Email', 'email', 1, 1, 'var', '$Env{"CGIHandle"}?Action=AgentTicketCompose&ResponseID=1&TicketID=$Data{"TicketID"}&ArticleID=$Data{"ArticleID"}', 0 ],
[ 'UserCustomerID', 'CustomerID', 'customer_id', 0, 1, 'var', '', 0 ],
# [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids', 1, 0, 'var', '', 0 ],
[ 'UserComment', 'Comment', 'comments', 1, 0, 'var', '', 0 ],
[ 'ValidID', 'Valid', 'valid_id', 0, 1, 'int', '', 0 ],
],
Selections => {
UserSalutation => {
'' => '-',
'Frau' => 'Frau',
'Herr' => 'Herr',
'Firma' => 'Firma',
},
},
};



Vielleicht hat einer ne Idee, denn nach 2 Tagen googlen und suchen raucht mir irgendwie der Kopf und ich bin mit meinem Latein am Ende.

Für alle Infos die ich noch bekommen kann, bin ich dankbar.

Viele Grüße

Thorsten
You do not have the required permissions to view the files attached to this post.
Last edited by tedwipe on 06 Mar 2014, 11:01, edited 2 times in total.
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by reneeb »

Bin ich blind oder hast Du die Fehlermeldung vergessen? Kannst Du die bitte posten?
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Nee, bist nicht blind, gerade ist es mir selbst aufgefallen....

Wie gesagt mir raucht der Kopf ;-)
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Hallo zusammen,

nach langem hin und her probieren bin ich da ev. auf einen kleinen Bug gestoßen.

Mein Fehler kam nicht nur wegen dem Login, sondern vielmehr daher:

[ 'UserStreetAddress', 'Straße', 'streetAddress', 1, 0, 'var', '', 0 ],

Bei UTF-8 in der ADS, der Postgres-DB und OTRS sollte man meinen das dieses kleine "ß" nicht stören sollte, da es ja auch einwandfrei unter unserem aktuellen Produktivsystem (siehe Signatur) genau so funktioniert! :evil:

DOCH weit gefehlt! Denn wenn ich dieses "ß" in ein "ss" umstelle, verschwindet die Fehlermeldung und die Kundeninfo wird ohne murren KORREKT ausgefüllt!

Also für alle, die mal irgendwann auf ein ähnliches Problem laufen, einfach mal in der Config.pm gucken was denn alles wie gemappt ist..... obwohl es seit Jahren unter 2.4.9 läuft heißt das ja noch lange nicht, dass die Config genau so unter der neuen Version läuft.

Vielleicht hat einer noch einen anderen Lösungsvorschlag da es ja eigentlich nur ein Workaround ist!

Ich teste jetzt fleißig weiter und kann das System mal mit den Echtdaten füttern...

Viele Grüße

Thorsten
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by reneeb »

Steht in der Config.pm ein "use utf8;"? Was sagt denn der Webserverlog zu dem "Internal Server Error"?
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Hi,

also meine Config.pm ist oben komplett angezeigt, da steht auch unter Source und Dest-Source utf-8 drin. Soll noch irgendwo utf8 stehen? Die Datenbank wird ja hoffentlich mit utf8 mim Webinstaller angelegt?!

Das Webserverlog schreibt folgendes:

[Mon Mar 10 06:38:01 2014] -e: utf8 "\xF6" does not map to Unicode at /opt/otrs//Kernel/System/Main.pm line 406, <$FH> chunk 1.
[Mon Mar 10 06:38:01 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x74, immediately after start byte 0xf6) in substitution iterator at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.
[Mon Mar 10 06:38:01 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x74, immediately after start byte 0xf6) in substitution iterator at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.
[Mon Mar 10 06:38:06 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in substitution (s///) at /opt/otrs//Kernel/Output/HTML/Layout.pm line 674.
[Mon Mar 10 06:38:06 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in pattern match (m//) at /opt/otrs//Kernel/Language.pm line 245.
[Mon Mar 10 06:38:06 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in substitution (s///) at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.
[Mon Mar 10 06:38:14 2014] -e: utf8 "\xF6" does not map to Unicode at /opt/otrs//Kernel/System/Main.pm line 406, <$FH> chunk 1.
[Mon Mar 10 06:38:14 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x74, immediately after start byte 0xf6) in substitution iterator at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.
[Mon Mar 10 06:38:14 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x74, immediately after start byte 0xf6) in substitution iterator at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.
[Mon Mar 10 06:38:18 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in substitution (s///) at /opt/otrs//Kernel/Output/HTML/Layout.pm line 674.
[Mon Mar 10 06:38:18 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in pattern match (m//) at /opt/otrs//Kernel/Language.pm line 245.
[Mon Mar 10 06:38:18 2014] -e: Malformed UTF-8 character (unexpected non-continuation byte 0x65, immediately after start byte 0xdf) in substitution (s///) at /opt/otrs//Kernel/Output/HTML/Layout.pm line 716.


Er wechselt den Internal Server Error mit "Unexpected end of input" ab...?!
Screenshot hänge ich nochmal an. Ist mir auch erst am Freitag Abend aufgefallen, dass die Fehlermeldung ab und an anders lautet.

In den betreffenden Dateien habe ich keine Änderung vorgenommen. Fehlt da ev. noch was?

Danke.

Gruß

Thorsten
You do not have the required permissions to view the files attached to this post.
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by reneeb »

Dann füge bitte mal

Code: Select all

use utf8;
in die Config.pm ein (oben bei den anderen "uses")...
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by reneeb »

Und schau auch mal mit

Code: Select all

file -i Kernel/Config.pm
ob die Datei auch wirklich als utf8 gespeichert wurde. Die Datei muss in utf8 gespeichert sein *und* es braucht das "use utf8".
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Hi,

also use utf-8 steht ganz oben drin, doch der File Befehl spuckt iso-8859-1 aus! Wie kann ich das umstellen? Im Moment teste ich das ganze mit der Appliance von Pascom. Produktiv wollte ich dann irgendwann opensuse einsetzen.

Danke schonmal für die Hilfe, denn ich glaube langsam kommen wir der Sache näher...

Gruß

Thorsten
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
tedwipe
Znuny newbie
Posts: 22
Joined: 08 Jan 2008, 12:23

Re: OTRS 3.3.5 AJAX Internal Server Error

Post by tedwipe »

Hi,

Super! Habs jetzt hinbekommen, vi umgestellt auf UTF-8 UND was viel viel wichtiger war..... und komplett auf meinem Bockmist gewachsen ist. Wenn Putty ISO verwendet steht natürlich auch ein falsches Zeichen in der Config.pm...

Schande auf mein Haupt, Putty auch umgestellt auf UTF-8 das "ß" wieder eingefügt und ein Test durchgeführt... geht..... :D

Danke für den kleinen Schubs vom Schlauch runter, somit ist das Problem gelöst.

Gruß

Thorsten
Echtsystem:
openSuSe 11.3, Postgres 8.4, OTRS 2.4.9
Locked