ClientID and Soap Messages

Hi.
We developed two apps, one as Server and one as Client (only for testing) both in DelphiXE.
The Server uses TROIndyHTTPServer and the Client TROWinInetHTTPChannel with TROSOAPMessage

The Server uses a TROInMemorySessionManager to keep a session while the Client is connected.
The session is created at login through a LoginService that implements ILoginService and is derived from TRORemoteDataModule.
With Client everything works fine but when I use others applications like WEBLogic or SoapUI to test my server i found problems with session.

This is what happens when the Client (delphi) connects, request data and disconnects:

16/07/2012 15:42: TWVLoginService.Login --> User ‘TIREZ’ is trying logon with password xxxxxxxxxxxxxxxxxxxxx
16/07/2012 15:42: SessionManager.OnSessionCreated --> Created Session {A35E8064-870B-4786-B71A-02239C497AEC}
16/07/2012 15:42: TWVLoginService.Login --> Login successful ID:{A35E8064-870B-4786-B71A-02239C497AEC}

16/07/2012 15:43: Request “SUM” from {A35E8064-870B-4786-B71A-02239C497AEC}

16/07/2012 15:43: TWVLoginService.Login --> User ‘TIREZ’ has requested logout ({A35E8064-870B-4786-B71A-02239C497AEC}
16/07/2012 15:43: SessionManager.OnSessionDeleted --> Deleted Session {A35E8064-870B-4786-B71A-02239C497AEC}

With WEBLogic or SoapUI a new IDClient is always created (50034A24-6752-4ABA-82CE-0AFD2987B08D/9CE73E6A-F5FB-4FC5-83A6-55CAFB581D36/E691748C-2BBA-4F9D-8991-111ADBCBC9E5)

16/07/2012 15:58: TWVLoginService.Login --> User ‘TIREZ’ is trying logon with password xxxxxxxxxxxxxxxxxxxxx
16/07/2012 15:58: SessionManager.OnSessionCreated --> Created Session {50034A24-6752-4ABA-82CE-0AFD2987B08D}
16/07/2012 15:58: TWVLoginService.Login --> Login successful ID:{50034A24-6752-4ABA-82CE-0AFD2987B08D}

16/07/2012 15:58: Request “SUM” from {9CE73E6A-F5FB-4FC5-83A6-55CAFB581D36}

16/07/2012 15:59: SessionManager.OnSessionCreated–> Created Session {E691748C-2BBA-4F9D-8991-111ADBCBC9E5}
16/07/2012 15:59: User ‘TIREZ’ has requested logout ({E691748C-2BBA-4F9D-8991-111ADBCBC9E5}
16/07/2012 15:59: SessionManager.OnSessionDeleted–> Deleted Session {E691748C-2BBA-4F9D-8991-111ADBCBC9E5}

thanks

I have logged the XML Request from Client and reused with SoapUI

<SOAP-ENV:Envelope xmlns:xsd=“http://www.w3.org/2001/XMLSchema” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xmlns:HNS=“http://tempuri.org/” xmlns:SOAP-ENC=“http://schemas.xmlsoap.org/soap/encoding/” xmlns:SOAP-ENV=“http://schemas.xmlsoap.org/soap/envelope/”>
SOAP-ENV:Header
<HNS:ROClientID SOAP-ENV:mustUnderstand=“0”>{B6BF8249-D4FE-46CA-8AF1-432A1B93FC67}</HNS:ROClientID>
</SOAP-ENV:Header>
<SOAP-ENV:Body SOAP-ENV:encodingStyle=“http://schemas.xmlsoap.org/soap/encoding/” xmlns:ro=“http://tempuri.org/”>
<NS1:Login xmlns:NS1=“urn:-WVLoginService”>
TIREZ
xxxxxxxxxxxxxxxxxxxxx
</NS1:Login>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

and now Work fine. The Client ID is generated by the client

SOAP-ENV:Header
<HNS:ROClientID SOAP-ENV:mustUnderstand=“0”>{B6BF8249-D4FE-46CA-8AF1-432A1B93FC67}</HNS:ROClientID>
</SOAP-ENV:Header>

bye

Hi.

Need to use ClientID which is in server’s response after successful login. RemObjects client does this itself, in third party clients need to do this manually.