2013-02-28 3 views
1

Я пытаюсь написать тесты интеграции на стороне сервера моей конечной точки Spring Web Service, защищенные с помощью - Spring WS Security 2.1.2.RELEASE и - WSS4j 1.6.9. Я стараюсь следовать документации Spring http://static.springsource.org/spring-ws/sites/2.0/reference/html/server.html. При установке, я получил до сих пор, я могу отправить запрос полезной нагрузкиИнтеграция Тестирование безопасного веб-службы Spring

<myns:MyRequest xmlns:myns="..."> 
     ... 
</myns:MyRequest> 

с использованием MockWebServiceClient в

mockWebServiceClient.sendRequest(withPayload(requestPayload)).andExpect(clientOrSenderFault()); 

которых интеграционный тест правильно отображает до конечной точки в контексте тестирования и я получаю «Не удалось проверить запрос: нет заголовка WS-Security found», как ожидалось.

Проблема: Теперь проблема в том, что если я отправлю запрос в конверте SOAP с заголовком и телом безопасности, я бы получил исключение, не найденное в конечной точке.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:myns="..."> 
    <soapenv:Header> 
     ... 
    </soapenv:Header> 
    <soapenv:Body> 
     <myns:MyRequest> 
     ... 
     </myns:MyRequest> 
    </soapenv:Body> 
</soapenv:Envelope> 

, так как он будет пытаться найти конечную точку вокруг "{} http://schemas.xmlsoap.org/soap/envelope/ Конверт".

Есть ли способ обойти эту проблему?

+0

Более новая версия Spring WS Test, которая представляет собой 2.1, содержит два метода, добавленных в RequestCreaters: RequestCreator withSoapEnvelope (Source soapEnvelope) и RequestCreator withSoapEnvelope (Resource soapEnvelope), которые я могу использовать для отправки конвертов SOAP для тестирования интеграции. http://forum.springsource.org/showthread.php?135298-Integration-Testing-of-secure-Spring-Web-Service – Lal

ответ

1

Новейшая версия Spring WS Test, которая имеет 2.1, содержит два метода, добавленных в RequestCreaters: RequestCreators.withSoapEnvelope (Source soapEnvelope) и RequestCreators.withSoapEnvelope (Resource soapEnvelope), которые позволяют отправлять конверты SOAP для тестирования интеграции. http://forum.springsource.org/showthread.php?135298-Integration-Testing-of-secure-Spring-Web-Service