2015-09-15 4 views
0

Я использовал SOAPConnection для вызова службы, проблема в том, что веб-служба возвращает файл cookie в ответ, как я могу сохранить этот файл cookie для дальнейших вызовов?Как сохранить ответ cookie от веб-службы?

SOAPConnectionFactory sfc = SOAPConnectionFactory.newInstance(); 
     SOAPConnection connection = sfc.createConnection(); 
     String text = new String(
       Files.readAllBytes(Paths.get("C:\\Users\\abhinav.malviya\\workspace\\TestWeb\\src\\SOAP.xml")), 
       StandardCharsets.UTF_8); 
     SOAPMessage sm = getSoapMessageFromString(text); 

     URL endpoint = new URL("http://URL/ProSightWS/psPortfoliosSecurity.asmx"); 
     SOAPMessage response = connection.call(sm, endpoint); 

     printMessage(response); 

     System.out.println(response.getContentDescription()); 

ответ

0

вы можете использовать следующий код для создания куки:

BindingProvider bindingProvider = (BindingProvider) Port; 
    Map<String,Object> requestContext = bindingProvider.getRequestContext(); 
    Map<String, List<String>> requestHeaders = new HashMap<String, List<String>>(); 
    List<String> cookies = new ArrayList<String>(); 
    cookies.add("SMSESSION=testCookie"); 
    requestHeaders.put("Cookie", cookies); 
    requestContext.put(MessageContext.HTTP_REQUEST_HEADERS, requestHeaders); 
Смежные вопросы