Yes, Chris is correct. Please add xml-tooling-1.2.0.jar to your client's classpath. This jar is available under the Rampart 1.5.1 binary distribution.
Thanks, Thilina On Wed, Feb 23, 2011 at 9:41 PM, Meeusen, Christopher W. < meeusen.christop...@mayo.edu> wrote: > I’ve never used Rampart or opensaml, but the NoClassDefFound usually means > you’re missing an artifact. I would find out which jar contains this class: > > > > org/opensaml/xml/validation/ValidatingXMLObject > > > > and add it to your /lib dir. > > > > Chris > > > > *From:* java-user-return-84171-Meeusen.Christopher=mayo.edu@ > axis.apache.org [mailto:java-user-return-84171-Meeusen.Christopher= > mayo....@axis.apache.org] *On Behalf Of *wadi wadi > *Sent:* Wednesday, February 23, 2011 3:26 AM > *To:* Amila Jayasekara > *Cc:* java-user@axis.apache.org > *Subject:* Re: SOAP header missing error - Please help! > > > > Hi Amila, > > > > Thanks for your reply. > > I am using the following versions: > > > > - Axis2 1.5.4 > > - rampart 1.5.1 > > - Tomcat 6 > > - in C:\Tomcat 6.0\webapps\axis2\WEB-INF\lib I have the following rampart > jar files: > > > rampart-core-1.5.1.jar, rampart-policy-1.5.1.jar, rampart-trust-1.5.1.jar > > - Also in %TOMCAT_HOME%/common/endorsed/ I have the following jars > > resolver.jar, xercesImpl-2.8.0.jar, xml-apis-2.8.0.jar > > - Yes Axis2 is deployed as webapp in tomcat and I can see my service listed > in the http://localhost:8080/axis2/services/listServices > > > > The tomcat log: > > =========== > > INFO: Server startup in 4481 ms > > [ERROR] org/opensaml/xml/validation/ValidatingXMLObject > > java.lang.NoClassDefFoundError: > org/opensaml/xml/validation/ValidatingXMLObject > > at java.lang.ClassLoader.defineClass1(Native Method) > > at java.lang.ClassLoader.defineClass(Unknown Source) > > at java.security.SecureClassLoader.defineClass(Unknown Source) > > at > org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733) > > at > org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124) > > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612) > > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) > > at java.lang.ClassLoader.loadClassInternal(Unknown Source) > > at java.lang.ClassLoader.defineClass1(Native Method) > > at java.lang.ClassLoader.defineClass(Unknown Source) > > at java.security.SecureClassLoader.defineClass(Unknown Source) > > at > org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2733) > > at > org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1124) > > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612) > > at > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) > > at java.lang.ClassLoader.loadClassInternal(Unknown Source) > > at > org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:89) > > at org.apache.axis2.engine.Phase.invoke(Phase.java:318) > > at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:254) > > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:160) > > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:173) > > at > org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:144) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) > > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) > > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) > > at java.lang.Thread.run(Unknown Source) > > > > Here is the output from TCPMon: > > > > ============== > > Listen Port: 8090 > > Target Host: 127.0.0.1 > > Target Port: 8080 > > ==== Request ==== > > POST /axis2/services/library-signencr HTTP/1.1 > > Content-Type: text/xml; charset=UTF-8 > > SOAPAction: "urn:getBook" > > User-Agent: Axis2 > > Host: 127.0.0.1:8090 > > Transfer-Encoding: chunked > > > > f9c > > <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" > http://schemas.xmlsoap.org/soap/envelope/" xmlns:xenc=" > http://www.w3.org/2001/04/xmlenc# > <http://www.w3.org/2001/04/xmlenc>"><soapenv:Header><wsse:Security > xmlns:wsse=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" > soapenv:mustUnderstand="1"><xenc:EncryptedKey > Id="EncKeyId-98E81F667C972820A012984010906725"><xenc:EncryptionMethod > Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" /><ds:KeyInfo > xmlns:ds="http://www.w3.org/2000/09/xmldsig#<http://www.w3.org/2000/09/xmldsig> > "> > > <wsse:SecurityTokenReference><wsse:KeyIdentifier EncodingType=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" > ValueType=" > http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1 > ">uYn3PK2wXheN2lLZr4n2mJjoWE0=</wsse:KeyIdentifier></wsse:SecurityTokenReference> > > </ds:KeyInfo><xenc:CipherData><xenc:CipherValue>YYHDaf8U3gr0vGSZ4VN2hKCflZ6JstklP2hq5VSM1yuq97sORdNBnqknlbbHfep7WFiEjlwODj3Av653JVdHBJhQOtOC/lM038y3KXRwWcHtgRdm46BJ5X2YBnRdJFzEfVwif/PIV0mBCWJ8gfzZACYNBOUxbuEsC4REkSGu3b8=</xenc:CipherValue></xenc:CipherData><xenc:ReferenceList><xenc:DataReference > URI="#EncDataId-2" > /></xenc:ReferenceList></xenc:EncryptedKey><wsse:BinarySecurityToken > xmlns:wsu=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" > EncodingType=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" > ValueType=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" > wsu:Id="CertId-98E81F667C972820A012984010900941">MIICoDCCAgkCBEnhw2IwDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNVBAYTAk5aMRMwEQYDVQQIEwpXZWxsaW5ndG9uMRowGAYDVQQHExFQYXJhcGFyYXVtdSBCZWFjaDEqMCgGA1UEChMhU29zbm9za2kgU29mdHdhcmUgQXNzb2NpYXRlcyBMdGQuMRAwDgYDVQQLEwdVbmtub3duMRgwFgYDVQQDEw9EZW5uaXMgU29zbm9za2kwHhcNMDkwNDEyMTAzMzA2WhcNMzYwODI3MTAzMzA2WjCBljELMAkGA1UEBhMCTloxEzARBgNVBAgTCldlbGxpbmd0b24xGjAYBgNVBAcTEVBhcmFwYXJhdW11IEJlYWNoMSowKAYDVQQKEyFTb3Nub3NraSBTb2Z0d2FyZSBBc3NvY2lhdGVzIEx0ZC4xEDAOBgNVBAsTB1Vua25vd24xGDAWBgNVBAMTD0Rlbm5pcyBTb3Nub3NraTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAhOVyNK8xyxtb4DnKtU6mF9KoiFqCk7eKoLE26+9h410CtTkxzWAfgnR+8i+LPbdsPY+yXAo6NYpCCKolXfDLe+AG2GwnMZGrIl6+BLF3hqTmIXBFTLGUmC7A7uBTivaWgdH1w3hb33rASoVU67BVtQ3QQi99juZX4vU9o9pScocCAwEAATANBgkqhkiG9w0BAQUFAAOBgQBMNPo1KAGbz8Jl6HGbtAcetieSJ3bEAXmv1tcjysBS67AXzdu1Ac+onHh2EpzBM7kuGbw+trU+AhulooPpewIQRApXP1F0KHRDcbqWjwvknS6HnomN9572giLGKn2601bHiRUj35hiA8aLmMUBppIRPFFAoQ0QUBCPx+m8/0n33w==</wsse:BinarySecurityToken><ds:Signature > xmlns:ds="http://www.w3.org/2000/09/xmldsig#<http://www.w3.org/2000/09/xmldsig>" > Id="Signature-1"> > > <ds:SignedInfo> > > <ds:CanonicalizationMethod Algorithm=" > http://www.w3.org/2001/10/xml-exc-c14n#<http://www.w3.org/2001/10/xml-exc-c14n>" > /> > > <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" > /> > > <ds:Reference URI="#Id-15964986"> > > <ds:Transforms> > > <ds:Transform > Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#<http://www.w3.org/2001/10/xml-exc-c14n>" > /> > > </ds:Transforms> > > <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> > > <ds:DigestValue>QzGqBgbir05TIn7uG8KAKDIClMk=</ds:DigestValue> > > </ds:Reference> > > </ds:SignedInfo> > > <ds:SignatureValue> > > > bSKKELQ4q8yqw9MN9mcuXSyiv6FyLyrWSMxXCd+fijF+AboIwTMyptNAvyofD7KvVSwzFjIOEt3z > > > SzSsWmNeQ3riRwDPBb9Uq0bAHX6UFg3Jy5k3IbjQjoldaauDhktEaoHN7Ut8Xb8Rx9Ny1RVA/+tg > > EkuvE/+J9UW3uBoCDoE= > > </ds:SignatureValue> > > <ds:KeyInfo Id="KeyId-98E81F667C972820A012984010901102"> > > <wsse:SecurityTokenReference xmlns:wsu=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" > wsu:Id="STRId-98E81F667C972820A012984010901103"><wsse:Reference > URI="#CertId-98E81F667C972820A012984010900941" ValueType=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" > /></wsse:SecurityTokenReference> > > </ds:KeyInfo> > > </ds:Signature></wsse:Security></soapenv:Header><soapenv:Body xmlns:wsu=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" > wsu:Id="Id-15964986"><xenc:EncryptedData Id="EncDataId-2" Type=" > http://www.w3.org/2001/04/xmlenc#Content"><xenc: > > 3a4 > > EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" > /><ds:KeyInfo > xmlns:ds="http://www.w3.org/2000/09/xmldsig#<http://www.w3.org/2000/09/xmldsig> > "> > > <wsse:SecurityTokenReference xmlns:wsse=" > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><wsse:Reference > URI="#EncKeyId-98E81F667C972820A012984010906725" > /></wsse:SecurityTokenReference> > > > </ds:KeyInfo><xenc:CipherData><xenc:CipherValue>rdrbjoaQv+o7P1+UqnlV01Pq04lRg439oKayrD0r7v11cz4Yl+8LxCr4ynG3znfDl++NGIVGw6Ru > > > O99Q1sD2gr00u9lXQQFAwWBWWMFNs0tcqT6JWgrXHWOizpk/VGK56z0VCe/3MXV+dqC5/qmg7aqc > > > +CX/Wk6n8AZ7ynMnsNJLqy8piXobYnCQ/2xDJEeF9+KniJbI1r68xrKjzd5FH4CJM65E6h1GXhqr > > > 1fjuEja/W2kT8RjAmS6phdsstJDfu64n9fdAVsRn9epXaUxU9EY37A/IYj5ebfe5c/GiBGTPV8Aw > > > IoXzCFy1MMY7JZsUoik2M/WhTAvFI2bkC8FqPyYdkX46ApKfyC5V6lSXMm4IWKf4BYDV7yppjJw1 > > > nvosssQtrsL4mFkxbfqWlkrNQgqZmx1P35XtXWg9Ln0/aF0=</xenc:CipherValue></xenc:CipherData></xenc:EncryptedData></soapenv:Body></soapenv:Envelope> > > 0 > > > > ==== Response ==== > > HTTP/1.1 500 Internal Server Error > > Server: Apache-Coyote/1.1 > > Content-Type: text/xml;charset=UTF-8 > > Transfer-Encoding: chunked > > Date: Tue, 22 Feb 2011 18:58:10 GMT > > Connection: close > > > > 15a > > <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" > http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring>java.lang.NoClassDefFoundError: > org/opensaml/xml/validation/ValidatingXMLObject</faultstring><detail > /></soapenv:Fault></soapenv:Body></soapenv:Envelope> > > 0 > > > > > > ============== > > > > Any idea? > > Many thanks. > > > > wadi > > > > > > > > On Wed, Feb 23, 2011 at 3:15 AM, Amila Jayasekara <ami...@wso2.com> wrote: > > Hi Wadi, > What is the rampart and axis2 versions you are using ? > It seems message is not passed to axis2 at server side at all. > Hope you have deployed axis2 as a webapp in tomcat and installed > rampart libraries and rampart modules to axis2 webapp. You can verify > this by going to "tomcat-installation-dir/webapps/axis2/WEB-INF/lib" > directory and check whether rampart jars are in there (rampart-*.jar). > If rampart jars are not properly installed please install them. > > If above suggestion doesnt work please attach the complete tomcat > server log. We may able to gather more info about the error from the > complete log. > > Thanks > AmilaJ > > > On Wed, Feb 23, 2011 at 12:09 AM, wadi wadi <wadie...@gmail.com> wrote: > > Hi, > > I am trying to run the example of signing and encryption described > > here https://www.ibm.com/developerworks/java/library/j-jws5/. > > I am getting the following error when running the client, any help > please! > > Many thanks, > > > > Client log: > > ======= > > run: > > java Connecting to http://localhost:8080/axis2/services/library-signencr > > java 16:32:59,188 ERROR AxisEngine:211 - SOAP header missing > > java org.apache.axis2.AxisFault: SOAP header missing > > java at > > > org.apache.rampart.handler.RampartReceiver.setFaultCodeAndThrowAxisFault(RampartReceiver.java:180) > > java at > > > org.apache.rampart.handler.RampartReceiver.invoke(RampartReceiver.java:99) > > > > Tomcat log > > ======== > > ERROR org/opensaml/xml/validation/ValidatingXMLObject > > java.lang.NoClassDefFoundError: > > org/opensaml/xml/validation/ValidatingXMLObject > > > > > -- > Wadienil. > -- Thilina Mahesh Buddhika http://blog.thilinamb.com