wsrp session propagation problem
karink Mar 1, 2007 8:02 AMHi,
using SAP Portal as consumer and JBoss Portal (JBoss 4.0.5GA + JBossPortal 2.6 DR1) as consumer.
I recognized that for each remote invocation a new session is created
on JBoss side.
SAP stated that this depends on the answer from JBoss during
the getServiceDescription method, where JBoss Portal (producers) says,
that the consumer does not need to handle sent cookies from the producer.
Here the answer from SAP:
- JBoss answered that it requires NO cookies initialization
(see <ns1:requiresInitCookie>none
</ns1:requiresInitCookie>)
- SAP does not call initCookie
- no producer cookies are stored on the consumer
- each consumer request is being sent without JSESSIONID and is being handled
by a NEW session on the producer side (no session held state is used across requests).
Here the request/response for getServiceDescription
1. Request from SAP EP (consumer) to JBoss (Producer)
POST /portal-wsrp/ServiceDescriptionService HTTP/1.1 Host: Host:8082 Content-Type: text/xml; charset=UTF-8 Cookie: MYSAPSSO2=AjExMDAgABRwb3J0YWw6QWRtaW5 Content-Length: 883 soapaction: urn:oasis:names:tc:wsrp:v1:getServiceDescription <?xml version="1.0" encoding="utf-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wn3="http://www.w3.org/1999/XMLSchema" xmlns:wn2="http://www.w3.org/2000/10/XMLSchema" xmlns:wn1="http://www.w3.org/2001/XMLSchema" xmlns:wn0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wn4="urn:oasis:names:tc:wsrp:v1:wsdl" xmlns:tns="urn:oasis:names:tc:wsrp:v1:wsdl"><SOAP-ENV:Body><prt0:getServiceDescription x mlns:prt0="urn:oasis:names:tc:wsrp:v1:types"><prt0:registrationContext> <prt0:registrationHandle>deregistered:</prt0:registrationHandle> <prt0:registrationState>ZGVyZWdpc3RlcmVk</prt0:registrationState> </prt0:registrationContext> <prt0:desiredLocales>en_US</prt0:desiredLocales> <prt0:desiredLocales>fr_FR</prt0:desiredLocales></prt0:getServiceDescription></SOAP-ENV:Body></SOAP-ENV:Envelope>
2. Answer from JBoss (Producer) to SAP EP (consumer)
HTTP/1.1 200 OK Server: Apache-Coyote/1.1 Set-Cookie: JSESSIONID=02AB7B830149EAEA023F7F3A87631361.localhost; Path=/portal-wsrp Content-Type: text/xml;charset=UTF-8 Transfer-Encoding: chunked Date: Thu, 01 Mar 2007 10:16:32 GMT <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'> <env:Header></env:Header><env:Body><ns1:getServiceDescriptionResponse xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'> <ns1:requiresRegistration>false </ns1:requiresRegistration> <ns1:offeredPortlets><ns1:portletHandle xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>/PortletTest.KarinsErstesTestPortlet </ns1:portletHandle> <ns1:markupTypes xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'> <ns1:mimeType xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>text/html </ns1:mimeType> <ns1:modes xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>wsrp:view </ns1:modes> <ns1:modes xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>wsrp:edit </ns1:modes> <ns1:windowStates xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>wsrp:normal </ns1:windowStates> <ns1:windowStates xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>wsrp:minimized </ns1:windowStates> <ns1:windowStates xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>wsrp:maximized </ns1:windowStates> <ns1:locales xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>en </ns1:locales> </ns1:markupTypes> <ns1:title xml:lang='en' xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'><ns1:value xmlns:ns1='urn:oasis:names:tc:wsrp:v1:types'>Karins Test Portlet </ns1:value> </ns1:title> </ns1:offeredPortlets> <ns1:requiresInitCookie>none </ns1:requiresInitCookie> </ns1:getServiceDescriptionResponse> </env:Body></env:Envelope>
Regards Karin