0 Replies Latest reply on Mar 6, 2012 3:25 AM by hmr_mueller

    Missing opensaml Lib for WS-Security SAML-Token-Profile in AS 7.1 Final

    hmr_mueller

      When trying to authenticate a SOAP Web service with WS-Security SAML Token Profile, I get a ClassNotFoundException for the classes of the opensaml library which is used by wss4j to handle the SAML assertion in the ws security header.

      Looking at the 'modules' folder of the AS 7.1 Final there is no opensaml library and the wss4j has no dependency to the opensaml lib. I have installed jbossws-cxf 4.0.1GA with the spring libs.

       

      16:37:12,357 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/test_jaxws].[EchoWS]] (http--127.0.0.1-8080-1) Servlet.service() for servlet EchoWS threw exception: java.lang.ClassNotFoundException: org.opensaml.xml.XMLObject from [Module "org.apache.ws.security:main" from local module loader @15cda3f (roots: C:\jboss-as-7.1.0.Final\modules)]

          at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)

          at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)

          at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)

          at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)

          at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)

          at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)

          at org.apache.ws.security.processor.SAMLTokenProcessor.handleSAMLToken(SAMLTokenProcessor.java:107)

          at org.apache.ws.security.processor.SAMLTokenProcessor.handleToken(SAMLTokenProcessor.java:53)

          at org.apache.ws.security.WSSecurityEngine.processSecurityHeader(WSSecurityEngine.java:396)

          at org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInInterceptor.java:249)

          at org.apache.cxf.ws.security.wss4j.AbstractUsernameTokenAuthenticatingInterceptor.handleMessage(AbstractUsernameTokenAuthenticatingInterceptor.java:91)

          at org.jboss.wsf.stack.cxf.security.authentication.SubjectCreatingInterceptor.handleMessage(SubjectCreatingInterceptor.java:65)

          at org.jboss.wsf.stack.cxf.security.authentication.SubjectCreatingInterceptor.handleMessage(SubjectCreatingInterceptor.java:43)

          at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)

       

       

      Where can I get the necessary module definition for opensaml and the dependency in wss4j from?

       

      Thanks.