On Thu, Dec 23, 2010 at 6:40 PM, Brad Cox <[email protected]> wrote:
> I've got a class loading problem I hope someone here can help with. > > The symptom is that Saxon 8.9 (which I compile from sources so I know > its in my .aar) was unable to find an extension function (LdapQuery) > in the same .aar. I hacked around this by setting Saxon's classloader > manually (to LdapQuery.class.getClassLoader()). That worked for > awhile, then another problem mysteriously turned up where > javax.xml.parsers.SAXParserFactory is unable to reference some method > in its implementation class. Sorry; can't provide the exact name. This > problem only turned up on WindowsXP (at work) and can't be reproduced > under MacOSX (where I am now), so I can't provide the exact path. > > Possibly involved here.... the Saxon set-up occurs during the service > init() which builds compiled instances that are used during method > execution. Does init() and exec() use the same class loaders or what? > > My understanding is still very poor. But as an experiment I just tried > putting this in services.xml > <parameter name="EnableChildFirstClassLoading">true</parameter> > > That failed as shown below. PdpSamlServiceMessageReceiverInOut is > generated by the WSO2 wsdl to java tool as public class > PdpSamlServiceMessageReceiverInOut extends > org.apache.axis2.receivers.AbstractInOutMessageReceiver, which I > assume (don't have source handy) implements > org.apache.axis2.engine.MessageReceiver. So I'm assuming this is > another class loader issue. > > Error: org.apache.axis2.deployment.DeploymentException: > com.technica.www.PdpSamlServiceMessageReceiverInOut cannot be cast to > org.apache.axis2.engine.MessageReceiver at > > org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:150) > at > org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81) > at > org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) > at > org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:810) > at > org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) > at > org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:390) > at > org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) > at > org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:384) > at > org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:64) > at > org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:71) > at > org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:90) > at java.util.TimerThread.mainLoop(Timer.java:512) at > java.util.TimerThread.run(Timer.java:462) Caused by: > java.lang.ClassCastException: > com.technica.www.PdpSamlServiceMessageReceiverInOut cannot be cast to > org.apache.axis2.engine.MessageReceiver at > > org.apache.axis2.deployment.DescriptionBuilder.loadMessageReceiver(DescriptionBuilder.java:192) > at > org.apache.axis2.deployment.DescriptionBuilder.processMessageReceivers(DescriptionBuilder.java:171) > at > org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:278) > at > org.apache.axis2.deployment.ServiceGroupBuilder.populateServiceGroup(ServiceGroupBuilder.java:101) > at > org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:109) > at > org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:143) > have you put any axis2 jars in your .aar file lib folder? Axis2 jar files should come only from the container. thanks, Amila. > ... 12 more > > Can someone explain what's happening here? What tools do you use to > resolve such problems? Should I stick with childFirst? > _______________________________________________ > Carbon-dev mailing list > [email protected] > https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >
_______________________________________________ Carbon-dev mailing list [email protected] https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
