You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Nidhi Sharma <jo...@gmail.com> on 2013/04/25 21:23:30 UTC

UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Hi,

I am trying to apply UsernameToken Security to my cxf webservice using
WSS4jInIterceptor.Here is my endpoint declaration:
<jaxws:endpoint id="ibis-webservice"
mplementor="org.ets.skm.oasys.webservice.event.EventNotificationBean"
                                               
address="/eventNotification">
                        <jaxws:inInterceptors>                       
                                <bean id="saajIn"
class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor"/>
                        <bean id="wss4jIn"
class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
                                        <constructor-arg>
                                                <map>
                                                        <entry key="action"
value="UsernameToken"/>
                                                        <entry
key="passwordType" value="PasswordText"/>
                                                        <entry
key="passwordCallbackRef">
                                                                <ref
bean="myPasswordCallback" />
                                                        </entry>
                                                </map>
                                        </constructor-arg>
                                </bean>
<bean id="saajOut"
class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"/>
                        </jaxws:inInterceptors>
                        <jaxws:properties>
                                <entry key="ws-security.enable.nonce.cache"
value="false" />
                                <entry
key="ws-security.enable.timestamp.cache" value="false" />
                               <entry key="ws-security.is-bsp-compliant"
value="false"/>
                        </jaxws:properties> 
                </jaxws:endpoint>

I am invoking this webservice fron java client:
        EventNotificationService ss = new EventNotificationService(wsdlURL,
SERVICE_NAME);
                HeaderHandlerResolver handlerResolver = new
HeaderHandlerResolver();
               
ss.setHandlerResolver(handlerResolver);ss.setHandlerResolver(handlerResolver);
      EventNotificationEndPoint port =
ss.getEventNotificationEndPointPort();  
               
                final Client proxy = ClientProxy.getClient(port);
                        final HTTPConduit conduit = (HTTPConduit)
proxy.getConduit();
                        HTTPClientPolicy httpClientPolicy = new
HTTPClientPolicy();
                        httpClientPolicy.setConnectionTimeout(1800000);
                        httpClientPolicy.setReceiveTimeout(1800000);
                        TLSClientParameters param = new
TLSClientParameters();
                        param.setDisableCNCheck(true);
                        conduit.setTlsClientParameters(param);
                        conduit.setClient(httpClientPolicy);
        org.ets.skm.oasys.webservice.event.Status _sendNotification__return
= port.sendNotification(info);

Using handlerResolver to create my SOAP message:
private static final String AUTH_NS =
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";

                private static final String AUTH_PREFIX="wsse";

SOAPEnvelope envelope = smc.getMessage().getSOAPPart().getEnvelope();
                SOAPHeader header = envelope.getHeader();
QName security = new QName(AUTH_NS, "Security", AUTH_PREFIX);
                        SOAPHeaderElement securitynHeader =
header.addHeaderElement(security);
                        securitynHeader.setMustUnderstand(true);
                                SOAPFactory soapFactory =
SOAPFactory.newInstance();
SOAPElement userNameTokenElm = soapFactory.createElement("UsernameToken",
                                                AUTH_PREFIX,
                                                AUTH_NS);
                                SOAPElement userNameElm =
soapFactory.createElement("Username",
                                                AUTH_PREFIX,
                                                AUTH_NS);
                                userNameElm.addTextNode("TestUser");
                                SOAPElement passwdElm =
soapFactory.createElement("Password",
                                                AUTH_PREFIX,
                                                AUTH_NS);
                                passwdElm.addTextNode("TestPassword");
                                userNameTokenElm.addChildElement(passwdElm);
                               
userNameTokenElm.addChildElement(userNameElm);
                               
securitynHeader.addChildElement(userNameTokenElm);


BUT my call come to WSS4jInInterceptor at server side and internally when it
is calling WSSecurityEngine.processSecurityHeader() it didn't find any
UsernameToken and related nodes so while calling Node node =
securityHeader.getFirstChild(); in this method it is returning null.

As I am adding UsernameToken in my request why at server side it cannot find
it and its throwing ActionMismatch WebService Exception.

Any help is appreciated, I am not able to understand the problem.

Nidhi 



--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Nidhi Sharma <jo...@gmail.com>.
Yes...After lot of digging..I found problem with Jboss Native WS jars. When
request was coming to the out interceptors it was not read properly and
hence creating wrong DOM node.
So when I tried running after removing jboss Native WS jars, it was working
for me.

Nidhi


On Tue, Oct 8, 2013 at 9:15 AM, diepie [via CXF] <
ml-node+s547215n5734809h6@n5.nabble.com> wrote:

> Hi Nidhi!
>
> I'am having the same issue that you explained?
> Did you manage to solve the problem?
>
> Thanks,
>
> Peter
>
> ------------------------------
>  If you reply to this email, your message will be added to the discussion
> below:
>
> http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5734809.html
>  To unsubscribe from UsernameToken Credentials not coming to Server side
> Wss4jInInterceptor, click here<http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=5726797&code=am9icy5uaWRoaUBnbWFpbC5jb218NTcyNjc5N3wyMTM4ODQ1MDQ5>
> .
> NAML<http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>




--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5734814.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by diepie <da...@yahoo.co.uk>.
Hi Nidhi!

I'am having the same issue that you explained?
Did you manage to solve the problem?

Thanks,

Peter



--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5734809.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Nidhi Sharma <jo...@gmail.com>.
Hi Tried the way suggested I am using cxf2.6.5 and Jboss5.1 It seems its
problem with Jboss-ws ...So now my Security Header looks like:
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
soap:mustUnderstand="1"><wsse:UsernameToken
wsu:Id="UsernameToken-1"><wsse:Username>Username</wsse:Username><wsse:Password
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">somepassword</wsse:Password></wsse:UsernameToken></wsse:Security></soap:Header>
</soap:Envelope>

And Now I am getting error:

2013-04-30
13:49:39,015|localhost|ERROR|http-0.0.0.0-8480-1|org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/eskm].[CXFServlet]||Servlet.service()
for servlet CXFServlet threw exception
java.lang.StackOverflowError
	at java.lang.String.equals(String.java:1005)
	at java.lang.System.checkKey(System.java:773)
	at java.lang.System.getProperty(System.java:647)
	at sun.security.action.GetPropertyAction.run(GetPropertyAction.java:67)
	at sun.security.action.GetPropertyAction.run(GetPropertyAction.java:32)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.io.PrintWriter.<init>(PrintWriter.java:78)
	at java.io.PrintWriter.<init>(PrintWriter.java:62)
	at org.jboss.wsf.common.DOMWriter.<init>(DOMWriter.java:108)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)
	at org.jboss.wsf.common.DOMWriter.printInternal(DOMWriter.java:299)
	at org.jboss.wsf.common.DOMWriter.print(DOMWriter.java:233)
	at org.jboss.wsf.common.DOMWriter.printNode(DOMWriter.java:152)
	at org.jboss.ws.core.soap.NodeImpl.assertSOAPParent(NodeImpl.java:587)
	at org.jboss.ws.core.soap.NodeImpl.getParentNode(NodeImpl.java:275)
	at org.jboss.wsf.common.DOMWriter.getNamespaceURI(DOMWriter.java:518)


IS there any solution for this problem..

Nidhi




--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5726986.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Colm O hEigeartaigh <co...@apache.org>.
The Username Element should appear before the Password Element. Your
Password Element should also contain a "Type" attribute like the following:

<wsse:Password Type="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText
">TestPassword</wsse:Password>

If this doesn't work then please turn logging to FINE/DEBUG on the server
side and send the log to the mailing list.

Colm.


On Mon, Apr 29, 2013 at 7:16 PM, Nidhi Sharma <jo...@gmail.com> wrote:

> When I was debugging this service ..I noticed when call comes to
> WSS4JInInterceptor..it delegates the call to SAAJInInterceptor and this
> class in turn call replaceHeaders(). I m not sure if something happening
> here in binding and attaching the request parameters.......
> I am new to CXF and related stuff so...just lost in this ...Please help!!!
>
>
> Nidhi
>
>
>
> --
> View this message in context:
> http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5726915.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>



-- 
Colm O hEigeartaigh

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

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Nidhi Sharma <jo...@gmail.com>.
When I was debugging this service ..I noticed when call comes to
WSS4JInInterceptor..it delegates the call to SAAJInInterceptor and this
class in turn call replaceHeaders(). I m not sure if something happening
here in binding and attaching the request parameters.......
I am new to CXF and related stuff so...just lost in this ...Please help!!!


Nidhi



--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5726915.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Nidhi Sharma <jo...@gmail.com>.
Hi Daniel,

I looked into both ways of creating header but I didnt see any
difference.Below is the request created the way you suggested...


<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><wsse:Security
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
SOAP-ENV:mustUnderstand="1"><wsse:UsernameToken><wsse:Username>TestUser</wsse:Username><wsse:Password>TestPassword</wsse:Password></wsse:UsernameToken></wsse:Security></soap:Header><soap:Body><ns1:sendNotification
xmlns:ns1="http://webservice.oasys.ets.org"><EventNotificationInfo_1
xmlns:ns2="http://webservice.oasys.ets.org/types"><sourceName>IBIS</sourceName><sourceType>ITEM
BANK</sourceType><eventType>ADMIN_FINALIZED</eventType><xmlData>&lt;questestinterop>&lt;qticomment>Event
Notification XML&lt;/qticomment> &lt;context> &lt;generic_identifier> 
&lt;type_label>TestProgramCode&lt;/type_label> 
&lt;identifier_string>GRI&lt;/identifier_string>  &lt;/generic_identifier> 
&lt;generic_identifier>    &lt;type_label>TestSubjectCode&lt;/type_label>  
&lt;identifier_string>GEN&lt;/identifier_string>
&lt;/generic_identifier>&lt;generic_identifier>   
&lt;type_label>TestAdminCode&lt;/type_label>  
&lt;identifier_string>20100917A&lt;/identifier_string>
&lt;/generic_identifier>&lt;/context>&lt;/questestinterop></xmlData></EventNotificationInfo_1></ns1:sendNotification></soap:Body></soap:Envelope>

And here is the request created using SOAPFactory...

<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><wsse:Security
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
SOAP-ENV:mustUnderstand="1"><wsse:UsernameToken><wsse:Password
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">TestPassword</wsse:Password><wsse:Username
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">TestUser</wsse:Username></wsse:UsernameToken></wsse:Security></soap:Header><soap:Body><ns1:sendNotification
xmlns:ns1="http://webservice.oasys.ets.org"><EventNotificationInfo_1
xmlns:ns2="http://webservice.oasys.ets.org/types"><sourceName>IBIS</sourceName><sourceType>ITEM
BANK</sourceType><eventType>ADMIN_FINALIZED</eventType><xmlData>&lt;questestinterop>&lt;qticomment>Event
Notification XML&lt;/qticomment> &lt;context> &lt;generic_identifier> 
&lt;type_label>TestProgramCode&lt;/type_label> 
&lt;identifier_string>GRI&lt;/identifier_string>  &lt;/generic_identifier> 
&lt;generic_identifier>    &lt;type_label>TestSubjectCode&lt;/type_label>  
&lt;identifier_string>GEN&lt;/identifier_string>
&lt;/generic_identifier>&lt;generic_identifier>   
&lt;type_label>TestAdminCode&lt;/type_label>  
&lt;identifier_string>20100917A&lt;/identifier_string>
&lt;/generic_identifier>&lt;/context>&lt;/questestinterop></xmlData></EventNotificationInfo_1></ns1:sendNotification></soap:Body></soap:Envelope>

anything in this request which may be missing and needed for binding....in
CXF or in WSS4jInInterceptor...

Nidhi



--
View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797p5726914.html
Sent from the cxf-user mailing list archive at Nabble.com.

Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Daniel Kulp <dk...@apache.org>.
My "gut feeling" is that it maybe caused by:

SOAPFactory soapFactory =  SOAPFactory.newInstance();
SOAPElement userNameTokenElm = soapFactory.createElement(…..)
…..
securitynHeader.addChildElement(userNameTokenElm);



The userNameTokenElm is not in the correct "document" at that point and thus may not be added.   Instead of using the SOAPFactory, you likely should use:

SOAPElement userNameTokenElm = securitynHeader.addChildElement(new QName(AUTH_NS, "UsernameToken", AUTH_PREFIX));

and such to create the elements directly as children of the appropriate elements.

Dan





On Apr 25, 2013, at 3:23 PM, Nidhi Sharma <jo...@gmail.com> wrote:

> Hi,
> 
> I am trying to apply UsernameToken Security to my cxf webservice using
> WSS4jInIterceptor.Here is my endpoint declaration:
> <jaxws:endpoint id="ibis-webservice"
> mplementor="org.ets.skm.oasys.webservice.event.EventNotificationBean"
> 
> address="/eventNotification">
>                        <jaxws:inInterceptors>                       
>                                <bean id="saajIn"
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor"/>
>                        <bean id="wss4jIn"
> class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
>                                        <constructor-arg>
>                                                <map>
>                                                        <entry key="action"
> value="UsernameToken"/>
>                                                        <entry
> key="passwordType" value="PasswordText"/>
>                                                        <entry
> key="passwordCallbackRef">
>                                                                <ref
> bean="myPasswordCallback" />
>                                                        </entry>
>                                                </map>
>                                        </constructor-arg>
>                                </bean>
> <bean id="saajOut"
> class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"/>
>                        </jaxws:inInterceptors>
>                        <jaxws:properties>
>                                <entry key="ws-security.enable.nonce.cache"
> value="false" />
>                                <entry
> key="ws-security.enable.timestamp.cache" value="false" />
>                               <entry key="ws-security.is-bsp-compliant"
> value="false"/>
>                        </jaxws:properties> 
>                </jaxws:endpoint>
> 
> I am invoking this webservice fron java client:
>        EventNotificationService ss = new EventNotificationService(wsdlURL,
> SERVICE_NAME);
>                HeaderHandlerResolver handlerResolver = new
> HeaderHandlerResolver();
> 
> ss.setHandlerResolver(handlerResolver);ss.setHandlerResolver(handlerResolver);
>      EventNotificationEndPoint port =
> ss.getEventNotificationEndPointPort();  
> 
>                final Client proxy = ClientProxy.getClient(port);
>                        final HTTPConduit conduit = (HTTPConduit)
> proxy.getConduit();
>                        HTTPClientPolicy httpClientPolicy = new
> HTTPClientPolicy();
>                        httpClientPolicy.setConnectionTimeout(1800000);
>                        httpClientPolicy.setReceiveTimeout(1800000);
>                        TLSClientParameters param = new
> TLSClientParameters();
>                        param.setDisableCNCheck(true);
>                        conduit.setTlsClientParameters(param);
>                        conduit.setClient(httpClientPolicy);
>        org.ets.skm.oasys.webservice.event.Status _sendNotification__return
> = port.sendNotification(info);
> 
> Using handlerResolver to create my SOAP message:
> private static final String AUTH_NS =
> "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
> 
>                private static final String AUTH_PREFIX="wsse";
> 
> SOAPEnvelope envelope = smc.getMessage().getSOAPPart().getEnvelope();
>                SOAPHeader header = envelope.getHeader();
> QName security = new QName(AUTH_NS, "Security", AUTH_PREFIX);
>                        SOAPHeaderElement securitynHeader =
> header.addHeaderElement(security);
>                        securitynHeader.setMustUnderstand(true);
>                                SOAPFactory soapFactory =
> SOAPFactory.newInstance();
> SOAPElement userNameTokenElm = soapFactory.createElement("UsernameToken",
>                                                AUTH_PREFIX,
>                                                AUTH_NS);
>                                SOAPElement userNameElm =
> soapFactory.createElement("Username",
>                                                AUTH_PREFIX,
>                                                AUTH_NS);
>                                userNameElm.addTextNode("TestUser");
>                                SOAPElement passwdElm =
> soapFactory.createElement("Password",
>                                                AUTH_PREFIX,
>                                                AUTH_NS);
>                                passwdElm.addTextNode("TestPassword");
>                                userNameTokenElm.addChildElement(passwdElm);
> 
> userNameTokenElm.addChildElement(userNameElm);
> 
> securitynHeader.addChildElement(userNameTokenElm);
> 
> 
> BUT my call come to WSS4jInInterceptor at server side and internally when it
> is calling WSSecurityEngine.processSecurityHeader() it didn't find any
> UsernameToken and related nodes so while calling Node node =
> securityHeader.getFirstChild(); in this method it is returning null.
> 
> As I am adding UsernameToken in my request why at server side it cannot find
> it and its throwing ActionMismatch WebService Exception.
> 
> Any help is appreciated, I am not able to understand the problem.
> 
> Nidhi 
> 
> 
> 
> --
> View this message in context: http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797.html
> Sent from the cxf-user mailing list archive at Nabble.com.

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: UsernameToken Credentials not coming to Server side Wss4jInInterceptor

Posted by Colm O hEigeartaigh <co...@apache.org>.
What does the actual request look like?

Colm.


On Thu, Apr 25, 2013 at 8:23 PM, Nidhi Sharma <jo...@gmail.com> wrote:

> Hi,
>
> I am trying to apply UsernameToken Security to my cxf webservice using
> WSS4jInIterceptor.Here is my endpoint declaration:
> <jaxws:endpoint id="ibis-webservice"
> mplementor="org.ets.skm.oasys.webservice.event.EventNotificationBean"
>
> address="/eventNotification">
>                         <jaxws:inInterceptors>
>                                 <bean id="saajIn"
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor"/>
>                         <bean id="wss4jIn"
> class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
>                                         <constructor-arg>
>                                                 <map>
>                                                         <entry key="action"
> value="UsernameToken"/>
>                                                         <entry
> key="passwordType" value="PasswordText"/>
>                                                         <entry
> key="passwordCallbackRef">
>                                                                 <ref
> bean="myPasswordCallback" />
>                                                         </entry>
>                                                 </map>
>                                         </constructor-arg>
>                                 </bean>
> <bean id="saajOut"
> class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"/>
>                         </jaxws:inInterceptors>
>                         <jaxws:properties>
>                                 <entry key="ws-security.enable.nonce.cache"
> value="false" />
>                                 <entry
> key="ws-security.enable.timestamp.cache" value="false" />
>                                <entry key="ws-security.is-bsp-compliant"
> value="false"/>
>                         </jaxws:properties>
>                 </jaxws:endpoint>
>
> I am invoking this webservice fron java client:
>         EventNotificationService ss = new EventNotificationService(wsdlURL,
> SERVICE_NAME);
>                 HeaderHandlerResolver handlerResolver = new
> HeaderHandlerResolver();
>
>
> ss.setHandlerResolver(handlerResolver);ss.setHandlerResolver(handlerResolver);
>       EventNotificationEndPoint port =
> ss.getEventNotificationEndPointPort();
>
>                 final Client proxy = ClientProxy.getClient(port);
>                         final HTTPConduit conduit = (HTTPConduit)
> proxy.getConduit();
>                         HTTPClientPolicy httpClientPolicy = new
> HTTPClientPolicy();
>                         httpClientPolicy.setConnectionTimeout(1800000);
>                         httpClientPolicy.setReceiveTimeout(1800000);
>                         TLSClientParameters param = new
> TLSClientParameters();
>                         param.setDisableCNCheck(true);
>                         conduit.setTlsClientParameters(param);
>                         conduit.setClient(httpClientPolicy);
>         org.ets.skm.oasys.webservice.event.Status _sendNotification__return
> = port.sendNotification(info);
>
> Using handlerResolver to create my SOAP message:
> private static final String AUTH_NS =
> "
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
> ";
>
>                 private static final String AUTH_PREFIX="wsse";
>
> SOAPEnvelope envelope = smc.getMessage().getSOAPPart().getEnvelope();
>                 SOAPHeader header = envelope.getHeader();
> QName security = new QName(AUTH_NS, "Security", AUTH_PREFIX);
>                         SOAPHeaderElement securitynHeader =
> header.addHeaderElement(security);
>                         securitynHeader.setMustUnderstand(true);
>                                 SOAPFactory soapFactory =
> SOAPFactory.newInstance();
> SOAPElement userNameTokenElm = soapFactory.createElement("UsernameToken",
>                                                 AUTH_PREFIX,
>                                                 AUTH_NS);
>                                 SOAPElement userNameElm =
> soapFactory.createElement("Username",
>                                                 AUTH_PREFIX,
>                                                 AUTH_NS);
>                                 userNameElm.addTextNode("TestUser");
>                                 SOAPElement passwdElm =
> soapFactory.createElement("Password",
>                                                 AUTH_PREFIX,
>                                                 AUTH_NS);
>                                 passwdElm.addTextNode("TestPassword");
>
> userNameTokenElm.addChildElement(passwdElm);
>
> userNameTokenElm.addChildElement(userNameElm);
>
> securitynHeader.addChildElement(userNameTokenElm);
>
>
> BUT my call come to WSS4jInInterceptor at server side and internally when
> it
> is calling WSSecurityEngine.processSecurityHeader() it didn't find any
> UsernameToken and related nodes so while calling Node node =
> securityHeader.getFirstChild(); in this method it is returning null.
>
> As I am adding UsernameToken in my request why at server side it cannot
> find
> it and its throwing ActionMismatch WebService Exception.
>
> Any help is appreciated, I am not able to understand the problem.
>
> Nidhi
>
>
>
> --
> View this message in context:
> http://cxf.547215.n5.nabble.com/UsernameToken-Credentials-not-coming-to-Server-side-Wss4jInInterceptor-tp5726797.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>



-- 
Colm O hEigeartaigh

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