I'm posted here because I understand that the wss4j mailing list is not active. I'm using Axis 1 because Axis 1 is used in the wss4j documentation and tutorial. I'm trying to eliminate risk factors here because I've had trouble getting this to work, and wss4j appeared to be well supported.
Is there a CXF tutorial for doing wsse over web services that you would recommend? I don't have time to climb a giant learning curve, but if there is a good way to bootstrap into this quickly, I'm game. On Fri, Oct 29, 2010 at 2:48 PM, Daniel Kulp <[email protected]> wrote: > > This would likely need to be asked on the axis and/or wss4j lists. > > That said, if this is your first time doing this type of thing, why are you > using Axis 1? Definitely go with something more modern than that. CXF > (which I would obviously recommend), Axis2, Metro, etc... > > Dan > > > On Friday 29 October 2010 11:34:11 am Devin Venable wrote: > > I'm attempting to use WSS4J and AXIS to connect as a client to a secure > web > > service. I've loaded my keystore, built Axis stubs, and created my > > deployment. Unfortunately, I'm getting a strange exception and Google > has > > yet to help me find the root cause. (Disclaimer: This is my first > go-round > > with WS-Security using a JAVA framework.) > > > > My deployment is simple and typical: > > > > <parameter name="action" value="UsernameToken"/> > > <parameter name="user" value="prcalhshsh.webserv"/> > > <parameter name="passwordType" value="PasswordDigest" /> > > <parameter name="passwordCallbackClass" value="PasswordCallback"/> > > > > When the web service is invoked, this is the exception giving my fits: > > > > > > javax.xml.crypto.dsig.TransformException: Couldn't find Canonicalizer > for: > > http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments: Unknown > > canonicalizer. No handler installed for URI > > http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments > > at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:85) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:71) at > > > org.jcp.xml.dsig.internal.dom.DOMCanonicalXMLC14NMethod.transform(DOMCanoni > > calXMLC14NMethod.java:55) at > > > org.jcp.xml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:111) > > at > > org.apache.ws.security.util.XMLUtils.outputDOM(XMLUtils.java:143) at > > org.apache.ws.axis.security.WSDoAllSender.invoke(WSDoAllSender.java:196) > > at > > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java > > :32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at > > org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:127) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2784) at > > org.apache.axis.client.Call.invoke(Call.java:2767) > > at org.apache.axis.client.Call.invoke(Call.java:2443) > > at org.apache.axis.client.Call.invoke(Call.java:2366) > > at org.apache.axis.client.Call.invoke(Call.java:1812) > > ... > > at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.<init>(Canonica > > lizer.java:108) at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.getInstance(Can > > onicalizer.java:123) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:79) ... 16 more > > > com.sun.org.apache.xml.internal.security.c14n.InvalidCanonicalizerException > > : Unknown canonicalizer. No handler installed for URI > > http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments > > at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.<init>(Canonica > > lizer.java:108) at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.getInstance(Can > > onicalizer.java:123) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:79) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:71) at > > > org.jcp.xml.dsig.internal.dom.DOMCanonicalXMLC14NMethod.transform(DOMCanoni > > calXMLC14NMethod.java:55) at > > > org.jcp.xml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:111) > > at > > org.apache.ws.security.util.XMLUtils.outputDOM(XMLUtils.java:143) at > > org.apache.ws.axis.security.WSDoAllSender.invoke(WSDoAllSender.java:196) > > at > > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java > > :32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at > > org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:127) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2784) at > > org.apache.axis.client.Call.invoke(Call.java:2767) > > at org.apache.axis.client.Call.invoke(Call.java:2443) > > ... > > > com.sun.org.apache.xml.internal.security.c14n.InvalidCanonicalizerException > > : Unknown canonicalizer. No handler installed for URI > > http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments > > at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.<init>(Canonica > > lizer.java:108) at > > > com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.getInstance(Can > > onicalizer.java:123) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:79) at > > > org.jcp.xml.dsig.internal.dom.ApacheCanonicalizer.canonicalize(ApacheCanoni > > calizer.java:71) at > > > org.jcp.xml.dsig.internal.dom.DOMCanonicalXMLC14NMethod.transform(DOMCanoni > > calXMLC14NMethod.java:55) at > > > org.jcp.xml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:111) > > at > > org.apache.ws.security.util.XMLUtils.outputDOM(XMLUtils.java:143) at > > org.apache.ws.axis.security.WSDoAllSender.invoke(WSDoAllSender.java:196) > > at > > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java > > :32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at > > org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:127) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2784) at > > org.apache.axis.client.Call.invoke(Call.java:2767) > > ... > > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client > > faultSubcode: > > faultString: Internal Error > > faultActor: > > faultNode: > > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:Internal Error > > at > > > org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java: > > 222) at > > > org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:1 > > 29) at > > > org.apache.axis.encoding.DeserializationContext.endElement(DeserializationC > > ontext.java:1087) at > > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Abs > > tractSAXParser.java:601) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scan > > EndElement(XMLDocumentFragmentScannerImpl.java:1782) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Frag > > mentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2938) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocu > > mentScannerImpl.java:648) at > > > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNS > > DocumentScannerImpl.java:140) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scan > > Document(XMLDocumentFragmentScannerImpl.java:511) at > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co > > nfiguration.java:808) at > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co > > nfiguration.java:737) at > > > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:1 > > 19) at > > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstract > > SAXParser.java:1205) at > > > com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(S > > AXParserImpl.java:522) at > > javax.xml.parsers.SAXParser.parse(SAXParser.java:395) > > at > > > org.apache.axis.encoding.DeserializationContext.parse(DeserializationContex > > t.java:227) at > > org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at > > org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at > > > org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandCh > > ecker.java:62) at > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2784) at > > org.apache.axis.client.Call.invoke(Call.java:2767) > > ... > > {http://xml.apache.org/axis/}hostname:dvenable-laptop > > > > Internal Error > > at > > > org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java: > > 222) at > > > org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:1 > > 29) at > > > org.apache.axis.encoding.DeserializationContext.endElement(DeserializationC > > ontext.java:1087) at > > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Abs > > tractSAXParser.java:601) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scan > > EndElement(XMLDocumentFragmentScannerImpl.java:1782) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Frag > > mentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2938) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocu > > mentScannerImpl.java:648) at > > > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNS > > DocumentScannerImpl.java:140) at > > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scan > > Document(XMLDocumentFragmentScannerImpl.java:511) at > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co > > nfiguration.java:808) at > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co > > nfiguration.java:737) at > > > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:1 > > 19) at > > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstract > > SAXParser.java:1205) at > > > com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(S > > AXParserImpl.java:522) at > > javax.xml.parsers.SAXParser.parse(SAXParser.java:395) > > at > > > org.apache.axis.encoding.DeserializationContext.parse(DeserializationContex > > t.java:227) at > > org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at > > org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at > > > org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandCh > > ecker.java:62) at > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2784) at > > org.apache.axis.client.Call.invoke(Call.java:2767) > > at org.apache.axis.client.Call.invoke(Call.java:2443) > > at org.apache.axis.client.Call.invoke(Call.java:2366) > > at org.apache.axis.client.Call.invoke(Call.java:1812) > > -- > Daniel Kulp > [email protected] > http://dankulp.com/blog >
