Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added more info on client-side config.

...

The properties are easily configured as client or endpoint properties--use the former for the SOAP client, the latter for the web service provider:.

Code Block
xml
xml
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:jaxws="http://cxf.apache.org/jaxws"
   xsi:schemaLocation="http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
   http://cxf.apache.org/jaxws 
   http://cxf.apache.org/schemas/jaxws.xsd">

   <jaxws:client name="{http://cxf.apache.org}MyServiceMyPortName" createdFromAPI="true">
      <jaxws:properties>
         <entry key="ws-security.username" value="Alice"/>
         <entry key="ws-security.callback-handler" value="interop.client.KeystorePasswordCallback"/>
         <entry key="ws-security.signature.properties" value="etc/alice.properties"/>
         <entry key="ws-security.encryption.properties" value="etc/bob.properties"/>
      </jaxws:properties>
   </jaxws:client>

</beans>

For the jaxws:client's name attribute above, use the namespace of the WSDL along with the name attribute of the desired wsdl:port element under the WSDL's service section. (See http://tinyurl.com/yatskw4 and http://tinyurl.com/y9e7rjf for an example.)

Code Block
xml
xml
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:jaxws="http://cxf.apache.org/jaxws"
   xsi:schemaLocation="http://www.springframework.org/schema/beans 
   http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
   http://cxf.apache.org/jaxws 
   http://cxf.apache.org/schemas/jaxws.xsd">

   <jaxws:endpoint 
      id="MyService"
      address="https://localhost:9001/MyService" 
      serviceName="interop:MyService"
      endpointName="interop:MyServiceEndpoint"
      implementor="com.foo.MyService">
        
      <jaxws:properties>
         <entry key="ws-security.callback-handler" value="interop.client.UTPasswordCallback"/>
         <entry key="ws-security.signature.properties" value="etc/bob.properties"/>
         <entry key="ws-security.encryption.properties" value="etc/alice.properties"/>
      </jaxws:properties> 
     
   </jaxws:endpoint> 
</beans>

...