Links und Bilder in Portletapplication mit eigenen Servlets funktionieren nicht

Symptom:
Links in Portletapplications mit eigenen Servlets (meist von Drittherstellern) funktionieren nicht wenn man sie clickt. Bilder werden nicht korrekt dargestellt. Servlets melden Fehler beim Zugriff auf die Session.

Beispielfehlermeldung eines Clippingportlets (www.portletbridge.org)
- Servlet.service() for servlet pbhs threw exception
javax.servlet.ServletException: No memento defined. The PortletBridge portlet stores all its user state (e.g. cookies, urls etc.) in the application scope session. If it can't find that data in the session this error is displayed., URL=/Extranet/pbhs/l-nLE2*1RaaS1srX1/btnhelpde.gif
at org.portletbridge.portlet.PortletBridgeServlet.doGet(PortletBridgeServlet.java:134)
Mögliche Ursache:
Die Session (Cookie) des Applicationservers ist auf den Portalpfad beschränkt. So können Servlets aus anderen Portletapplications nicht auf die Session zugreifen.

Lösung:
Eine Konfigurationsänderung im Applicationserver: Session (Cookie) muss unabhängig vom Pfad sein.
Beispiel
Applicationserver: Apache Tomcat 5.5
Konfigurationsdatei: tomcat/conf/server.xml
Parameter: emptySessionPath="true"
(für alle <Connector> nodes)

Beispiel:
<Connector port="42809" enableLookups="false" redirectPort="42843" protocol="AJP/1.3" emptySessionPath="true" />



Seite drucken
Seite empfehlen


Downloads & Links