1

I am using apache axis2 server webservies, Basically I am sending xml response to android client through webservices. Here I need to maintain the session since the services per user basis. I know maintaining session in webservices is bad idea, but cant avoid it.

Actually I need to generate random unique string when user invoke first service from android client, that random string going to be used as session id. This session id, i need to set in http custom header, so that android client can able to get it and can send it subsequent requests as well.

I want to know whether any API is available in axis2 to set custom header information on http headers. Same way I need to read the http header, so that next request I can get the session id from header.

Can anyone advice me regarding this?? Thanks

-Ravi

Taryn
  • 242,637
  • 56
  • 362
  • 405
Ravisankar
  • 21
  • 1
  • 5

1 Answers1

1

Dead link on @Martin Dürrmeier's answer, here's a snapshot of the webpage that i've found on web.archive.org : Axis2 - Setting custom HTTP Headers on a response, it helped me.

Here's the lines needed :

MessageContext responseMessageContext =  
               MessageContext.getCurrentMessageContext().getOperationContext().getMessageContext(  
                       WSDLConstants.MESSAGE_LABEL_OUT_VALUE);  
        List<Header> headers = new ArrayList<Header>();  
        headers.add(new Header(HTTPConstants.HEADER_CONTENT_ENCODING, "identity"));  
        responseMessageContext.setProperty(HTTPConstants.HTTP_HEADERS, headers); 
Guerneen4
  • 708
  • 8
  • 17