Я написал весенний веб-сервис, используя Wss4jSecurityInterceptor. Ниже приведена конфигурация весной XML.
<bean id="keyStoreWss4jSecurityInterceptor" class="org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor">
<property name="validationActions" value="Signature"/>
<property name="validationSignatureCrypto">
<bean class="org.springframework.ws.soap.security.wss4j.support.CryptoFactoryBean">
<property name="keyStorePassword" value="${excise.pricelist.server.truststore.password}"/>
<property name="keyStoreLocation" value="file:/${excise.pricelist.server.truststore}"/>
</bean>
</property>
</bean>
<sws:payloadRoot namespaceUri="http://www.test.com/schema/item/priceListRequest">
<ref bean="keyStoreWss4jSecurityInterceptor"/>
</sws:payloadRoot>
<sws:dynamic-wsdl id="PriceListService"
portTypeName="TestService" locationUri="/soapws"
targetNamespace="http://test.com/xml/schema/v1_0/testService">
<sws:xsd location="classpath:/TestServiceOperations.xsd" />
</sws:dynamic-wsdl>
Веб-сервис развернут в контейнере JBoss EAP 6 и работает нормально.
Однако сгенерированный WSDL не содержит политики безопасности для явным образом сообщите клиенту, какую политику безопасности следует использовать.
Какая конфигурация требуется для включения информации о безопасности в сгенерированный WSDL.
Спасибо!