Remove the "securityHandler" bean as it's not required when you have a
WS-SecurityPolicy configuration.

Colm.


On Thu, Mar 6, 2014 at 9:28 AM, jogesh anand <[email protected]>wrote:

> */I am working towards an upgrade from came-cxf 2.9.2 TO camel-cxf 2.12.0
> (wss4j 1.6.9)camel-cxf 2.12.0 in turn uses cxf 2.7.6. The wsdl is as
> follows./*
>
> <wsdl11:definitions xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/";
>         xmlns:soap11="http://schemas.xmlsoap.org/wsdl/soap/";
> xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/";
>         xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> xmlns:whttp="http://schemas.xmlsoap.org/wsdl/http/";
>         xmlns:mime="http:/schemas.xmlsoap.org/wsdl/mime/"
>
> xmlns:sfx="
> http://www.xmlns.xyzstores.com/AssetManagement/FacilitiesManagement/wsdl/GetBusinessUnitInfo/2.0/
> "
>
> xmlns:pfx="
> http://www.xmlns.xyzstores.com/AssetManagement/FacilitiesManagement/datatypes/GetBusinessUnitInfo/2.0/
> "
>
> xmlns:flt="
> http://www.xmlns.xyzstores.com/Fault/datatypes/MessageFault/1.0/";
>         xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy";
>
> targetNamespace="
> http://www.xmlns.xyzstores.com/AssetManagement/FacilitiesManagement/wsdl/GetBusinessUnitInfo/2.0/
> ">
>         <wsp:Policy
> xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> "
> wsu:Id="UsernameToken">
>                 <wsp:ExactlyOne>
>                         <wsp:All>
>                                 <sp:SupportingTokens
>                                         xmlns:sp="
> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702";>
>                                         <wsp:Policy>
>                                                 <sp:UsernameToken
>
> sp:IncludeToken="
> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient
> "></sp:UsernameToken>
>                                         </wsp:Policy>
>                                 </sp:SupportingTokens>
>                         </wsp:All>
>                 </wsp:ExactlyOne>
>         </wsp:Policy>
> ....................
> ....................
> <wsdl11:portType name="GetBusinessUnitInfoInterface">
>                 <wsdl11:operation name="getBusinessUnitDetails">
>                         <wsp:PolicyReference
> URI="#UsernameToken"></wsp:PolicyReference>
>                         <wsdl11:input
> message="sfx:getBusinessUnitDetails-input"></wsdl11:input>
>                         <wsdl11:output
> message="sfx:getBusinessUnitDetails-output"></wsdl11:output>
>                         <wsdl11:fault
> message="sfx:getBusinessUnitDetails-outFault"
> name="getBusinessUnitDetails-outFault"></wsdl11:fault>
> </wsdl11:operation>
>
> -----------------------------------------------------------------------------------------------------
> */In my camel context i have wss4j interceptors:/*
>
> <cxf:cxfEndpoint id="basic-locationinfo-ws" address="/getbasiclocationinfo"
>                 endpointName="c:GetBusinessUnitInfoInterface-SOAP11HTTP"
> serviceName="c:GetBusinessUnitInfo"
>
> wsdlURL="classpath:wsdl/GetBusinessUnitInfoImplementation-V2.0.wsdl"
> xmlns:c="
> http://www.xmlns.xyzstores.com/AssetManagement/FacilitiesManagement/wsdl/GetBusinessUnitInfo/2.0/
> ">
>                 <cxf:inInterceptors>
>                         <ref bean="logInterceptor" />
>                         <ref bean="securityHandler" />
>                 </cxf:inInterceptors>
>                 <cxf:outFaultInterceptors>
>                         <ref bean="faultInterceptor" />
>                 </cxf:outFaultInterceptors>
>                 <cxf:properties><entry key="ws-security.ut.validator"><ref
> bean="customUserValidator" /></entry></cxf:properties>
> </cxf:cxfEndpoint>
>
> <bean id="securityHandler"
> class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
>                 <constructor-arg>
>                         <map>
>                                 <entry key="action" value="UsernameToken"
> />
>                                 <entry key="passwordType"
> value="PasswordText" />
>                         </map>
>                 </constructor-arg>
>         </bean>
> <bean id="customUserValidator"
> class="com.xyz.eim.common.handler.CustomUserTokenValidator">
>                 <property name="userProps" ref="credentials" />
>                 <property name="jasyptEncryptor" ref="jasypt" />
> </bean>
>
> ------------------------------------------------------------------------------------------------------
> */But i am getting the following exception from ws-security layer:/*
>
> org.apache.cxf.ws.policy.PolicyException: These policy alternatives can not
> be satisfied:
> {
> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}SupportingTokens
> {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}UsernameToken
>
> -------------------------------------------------------------------------------------------------------
> My Soap request is as follows:
>
> <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";>
> <SOAP-ENV:Header mustUnderstand="1">
>         <wsse:Security
> xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
> "
> SOAP-ENV:actor="">
>                 <wsse:UsernameToken><wsse:Username>jOHN</wsse:Username>
>                 <wsse:Password
> Type="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText
> ">jOHNPASS</wsse:Password>
> </wsse:UsernameToken>
> </wsse:Security>
> </SOAP-ENV:Header>
> <SOAP-ENV:Body>
> <pfx:getBusinessUnitBasicInfoRequest
> ...........................
>
> ---------------------------------------------------------------------------------------------------
> Where am i going wrong. Is there any issue with my namespaces in request?
> What might be the issue here ?
>
>
>
>
> --
> View this message in context:
> http://cxf.547215.n5.nabble.com/org-apache-cxf-ws-policy-PolicyException-These-policy-alternatives-can-not-be-satisfied-tp5740898.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>



-- 
Colm O hEigeartaigh

Talend Community Coder
http://coders.talend.com

Reply via email to