1 Reply Latest reply: Apr 5, 2012 10:33 AM by thofer RSS

HandlerChain Annotation leading to ClassNotFoundException

thofer Newbie

Before digging deeper, or throwing this approach to the trashcan, I'm asking you for some advice.

 

 

I'm deploying an EAR with a WAR and some JARs.

 

EAR

- WAR

| - classes

| - lib

| - configfiles ...

- JARs

 

In the classes of the WAR is an JAX-WS annotated EJB (Stateless). The @HandlerChain annotation gets resolved but the class mentioned in the handler-chain.xml couldn't be loaded ...? No matter if I put the jar into WAR/lib, or extract the contents and put it into WAR/classes. I tried the JBoss lib folder too. The only thing I get is

 

 

 
org.jboss.deployers.spi.DeploymentException: Error during deploy: vfs:///opt/..../jboss-6.0.0.Final/server/default/deploy/picketlink/SwgCoreEar-1.0.ear/SwgPdp-1.0.war/
          at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:185) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1832) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1550) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1603) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1491) [:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654) [jboss-dependency.jar:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersImpl.java:1983) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:1076) [:2.2.0.GA]
          at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:679) [:2.2.0.GA]
          at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.process(MainDeployerPlugin.java:106) [:6.0.0.Final]
          at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.process(ProfileControllerContext.java:143) [:0.2.2]
          at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.deploy(HDScanner.java:240) [:0.2.2]
          at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.complete(HDScanner.java:192) [:0.2.2]
          at org.jboss.profileservice.management.TwoPCActionWrapper.doComplete(TwoPCActionWrapper.java:57) [:0.2.2]
          at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.complete(AbstractTwoPhaseModificationAction.java:74) [:0.2.2]
          at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.prepare(AbstractTwoPhaseModificationAction.java:95) [:0.2.2]
          at org.jboss.profileservice.management.ModificationSession.prepare(ModificationSession.java:87) [:0.2.2]
          at org.jboss.profileservice.management.AbstractActionController.internalPerfom(AbstractActionController.java:234) [:0.2.2]
          at org.jboss.profileservice.management.AbstractActionController.performWrite(AbstractActionController.java:213) [:0.2.2]
          at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:150) [:0.2.2]
          at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:135) [:0.2.2]
          at org.jboss.profileservice.deployment.hotdeploy.HDScanner.scan(HDScanner.java:146) [:0.2.2]
          at org.jboss.profileservice.deployment.hotdeploy.HDScanner.run(HDScanner.java:90) [:0.2.2]
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [:1.6.0_22]
          at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) [:1.6.0_22]
          at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) [:1.6.0_22]
          at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:165) [:1.6.0_22]
          at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:267) [:1.6.0_22]
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.6.0_22]
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.6.0_22]
          at java.lang.Thread.run(Thread.java:679) [:1.6.0_22]
Caused by: javax.xml.ws.WebServiceException: javax.xml.ws.WebServiceException: Failed to instantiate handler
          at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:335) [:2.3.1]
          at org.jboss.wsf.stack.cxf.deployment.EndpointImpl.doPublish(EndpointImpl.java:62) [:3.4.1.GA]
          at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:238) [:2.3.1]
          at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:481) [:2.3.1]
          at org.jboss.wsf.stack.cxf.configuration.NonSpringBusHolder.configure(NonSpringBusHolder.java:112) [:3.4.1.GA]
          at org.jboss.wsf.stack.cxf.deployment.aspect.BusDeploymentAspect.start(BusDeploymentAspect.java:110) [:3.4.1.GA]
          at org.jboss.webservices.integration.deployers.WSDeploymentAspectDeployer.internalDeploy(WSDeploymentAspectDeployer.java:123) [:6.0.0.Final]
          at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55) [:2.2.0.GA]
          at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179) [:2.2.0.GA]
          ... 37 more
Caused by: javax.xml.ws.WebServiceException: Failed to instantiate handler
          at org.apache.cxf.jaxws.handler.HandlerChainBuilder.buildHandlerChain(HandlerChainBuilder.java:131) [:2.3.1]
          at org.apache.cxf.jaxws.handler.AnnotationHandlerChainBuilder.processHandlerElement(AnnotationHandlerChainBuilder.java:267) [:2.3.1]
          at org.apache.cxf.jaxws.handler.AnnotationHandlerChainBuilder.processHandlerChainElement(AnnotationHandlerChainBuilder.java:167) [:2.3.1]
          at org.apache.cxf.jaxws.handler.AnnotationHandlerChainBuilder.buildHandlerChainFromClass(AnnotationHandlerChainBuilder.java:120) [:2.3.1]
          at org.apache.cxf.jaxws.handler.AnnotationHandlerChainBuilder.buildHandlerChainFromClass(AnnotationHandlerChainBuilder.java:284) [:2.3.1]
          at org.apache.cxf.jaxws.JaxWsServerFactoryBean.buildHandlerChain(JaxWsServerFactoryBean.java:215) [:2.3.1]
          at org.apache.cxf.jaxws.JaxWsServerFactoryBean.init(JaxWsServerFactoryBean.java:194) [:2.3.1]
          at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:184) [:2.3.1]
          at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:407) [:2.3.1]
          at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:314) [:2.3.1]
          ... 45 more
Caused by: java.lang.ClassNotFoundException: at.ac.tuwien.auto.smartwebgrid.security.soaphandler.SignatureHandler from BaseClassLoader@4715959e{vfs:///opt/.../jboss-6.0.0.Final/server/default/deploy/picketlink/SwgCoreEar-1.0.ear/SwgPdp-1.0.war/}
          at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:480) [jboss-classloader.jar:2.2.0.GA]
          at java.lang.ClassLoader.loadClass(ClassLoader.java:266) [:1.6.0_22]
          at java.lang.Class.forName0(Native Method) [:1.6.0_22]
          at java.lang.Class.forName(Class.java:264) [:1.6.0_22]
          at org.apache.cxf.jaxws.handler.HandlerChainBuilder.buildHandlerChain(HandlerChainBuilder.java:121) [:2.3.1]
          ... 54 more

 

 

handler-chain.xml:

 

 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<javaee:handler-chains xmlns:javaee="http://java.sun.com/xml/ns/javaee"
          xmlns:xsd="http://www.w3.org/2001/XMLSchema">
          <javaee:handler-chain>
                    <javaee:handler>
                              <javaee:handler-class>at.ac.tuwien.auto.smartwebgrid.security.soaphandler.SignatureHandler</javaee:handler-class>
                    </javaee:handler>
          </javaee:handler-chain>
</javaee:handler-chains>

 

I'm using the excat configuration in another project with jetty ... works great!

 

Environment:

OpenJDK 6, JBoss 6 Final

 

Before adding that HandlerChain config file thing everything worked fine ...

I guess that something goes wrong with the BaseClassLoader.

 

Thank you in advance.

 

regards

tom

  • 1. Re: HandlerChain Annotation leading to ClassNotFoundException
    thofer Newbie

    I thought that I fixed this issue, but it's getting worse.

     

    After enabling verbose classloader output, I saw that the missing class gets loaded ... but the ClassNotFound still occurs.

     

    Can anyone help me, to configure things correctly? I tried jboss-classloading.xml examples, added/removed/edited Manifest entries, copied the required jar in the jboss/lib folder ... no way to get things working ...

     

    btw: happy easter weekend

     

    tom