2015-09-15 6 views
0

Я пытаюсь добавить SOAP: Заголовок с аутентификацией wss4j для моей исходящей службы SOAP.Spring WebServiceTemplate Interceptor для добавления заголовка безопасности

Ниже мой WebServiceTemplate и перехватчик конфигурации

<bean id="securityHeader" 
    class="org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor"> 
    <property name="securementActions" value="UsernameToken" /> 
    <property name="securementUsername" value="uname" /> 
    <property name="securementPassword" value="[email protected]" /> 
    <property name="securementPasswordType" value="PasswordText" /> 
    <property name="securementUsernameTokenElements" value="Nonce Created" /> 
</bean>` 

<bean id="webService" class="org.springframework.ws.client.core.WebServiceTemplate"> 
    <constructor-arg ref="messageFactory" /> 
    <property name="messageSender"> 
     <bean 
      class="org.springframework.ws.transport.http.CommonsHttpMessageSender"> 
      <!-- <property name="credentials" ref="credentials" /> --> 
     </bean> 
    </property> 
    <property name="interceptors"> 
    <list> 
     <ref bean="securityHeader" /> 
    </list> 
</property> 
    <property name="defaultUri" 
     value="https://test.test.com/ws/service/test" />   
    <property name="marshaller" ref="fmarshaller" /> 
    <property name="unmarshaller" ref="forwardunmarshaller" /> 
</bean> 

Но когда происходит исходящий вызов, его не добавляя заголовок безопасности SOAP. webService.marshalSendAndReceive("http://localhost:8088/mockBinding",request);

+0

Невозможно увидеть проблему здесь. Можете ли вы попробовать, если напрямую указывать определение компонента? (без ref) работает? – Bajal

+0

Является ли настроенный 'WebServiceTemplate' фактически шаблоном, который вы используете? –

+0

Будет ли проблема с wss4j и пружинной версией im? – prakash

ответ

0

Ниже изменения сделали трюк для меня.

  1. Изменение версии SOAP 1,1
  2. Определение декларации боб внутри перехватчик вместо нее ссылаться.
  3. Использовать обратный вызов сообщения веб-службы.