geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: [geronimo1.1.1] Re:Re: Re: Axis2 war classloader ClassNotFoundException
Date Sat, 20 Jan 2007 16:40:37 GMT
I don't understand what you are trying to do, but I will comment anyway.

I suspect you are trying to use the wrong jndi tree.  I would expect  
that in geronimo you would set up an amq rar deployment pointing to  
your remote amq broker and deploy an outbound connection factory and  
some admin objects/destinations/queues or topics.  This would all be  
in geronimo.

The next step would be to make it so axis is using the geronimo  
java:comp jndi context instead of the amq remote context.  I suspect  
this is going to involve installing an interceptor into axis2 since  
from the stack trace it looks like the thread involved is coming from  
a thread pool controlled by axis and the jndi java:comp context  
relies on a ThreadLocal to hold the correct context.  An axis2 expert  
is going to need to comment on how to do this :-)

thanks
david jencks

On Jan 20, 2007, at 5:48 AM, falom wrote:

> Hi Lin,
>
> I setup jms resource in geronimo and have one axis2 client trying  
> to connection to it and call one axis2 service, but i got  
> javax.naming.NamingException: scheme java not recognized exception.  
> Does this mean incompatibility between geronimo's activemq and  
> current axis2 jms implementation? Or do you have any idea how to go  
> around this. I did manage to have the axis2 jms listener up working  
> within geronimo server.
>
> falom
>
> 2007-1-20 21:37:26  
> org.apache.axis2.transport.jms.JMSOutTransportInfo handleException
> error: Cannot get JMS Connection factory with props :  
> {java.naming.provider.url=tcp://localhost:61616,  
> java.naming.factory.initial=org.activemq.jndi.ActiveMQInitialContextFa 
> ctory, transport.jms.ConnectionFactoryJNDIName=java:comp/env/jms/ 
> myQueueConnectionFactory}
> javax.naming.NamingException: scheme java not recognized
>     at org.activemq.jndi.ReadOnlyContext.lookup 
> (ReadOnlyContext.java:198)
>     at javax.naming.InitialContext.lookup(Unknown Source)
>     at  
> org.apache.axis2.transport.jms.JMSOutTransportInfo.getConnectionFactor 
> y(JMSOutTransportInfo.java:85)
>     at org.apache.axis2.transport.jms.JMSOutTransportInfo.<init> 
> (JMSOutTransportInfo.java:69)
>     at org.apache.axis2.transport.jms.JMSSender.invoke 
> (JMSSender.java:66)
>     at org.apache.axis2.engine.AxisEngine 
> $TransportNonBlockingInvocationWorker.run(AxisEngine.java:746)
>     at  
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
> $Worker.runTask(ThreadPoolExecutor.java:665)
>     at  
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
> $Worker.run(ThreadPoolExecutor.java:690)
>     at java.lang.Thread.run(Unknown Source)
> 2007-1-20 21:37:26 org.apache.axis2.engine.AxisEngine 
> $TransportNonBlockingInvocationWorker run
> info: Cannot get JMS Connection factory with props :  
> {java.naming.provider.url=tcp://localhost:61616,  
> java.naming.factory.initial=org.activemq.jndi.ActiveMQInitialContextFa 
> ctory, transport.jms.ConnectionFactoryJNDIName=java:comp/env/jms/ 
> myQueueConnectionFactory}
> C:\Axis2_1.1\axis2-1.1\samples\Axis2JmsWorkingSample2 
> \client_repository
> 2007-1-20 21:37:29 org.apache.axis2.deployment.DeploymentEngine  
> doDeploy
> info: Deploying module : addressing-1.1
> 2007-1-20 21:37:29  
> org.apache.axis2.transport.jms.JMSOutTransportInfo handleException
> error: Cannot get JMS Connection factory with props :  
> {java.naming.provider.url=tcp://localhost:61616,  
> java.naming.factory.initial=org.activemq.jndi.ActiveMQInitialContextFa 
> ctory, transport.jms.ConnectionFactoryJNDIName=java:comp/env/jms/ 
> myQueueConnectionFactory}
> javax.naming.NamingException: scheme java not recognized
>     at org.activemq.jndi.ReadOnlyContext.lookup 
> (ReadOnlyContext.java:198)
>     at javax.naming.InitialContext.lookup(Unknown Source)
>     at  
> org.apache.axis2.transport.jms.JMSOutTransportInfo.getConnectionFactor 
> y(JMSOutTransportInfo.java:85)
>     at org.apache.axis2.transport.jms.JMSOutTransportInfo.<init> 
> (JMSOutTransportInfo.java:69)
>     at org.apache.axis2.transport.jms.JMSSender.invoke 
> (JMSSender.java:66)
>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:670)
>     at org.apache.axis2.description.OutInAxisOperationClient.send 
> (OutInAxisOperation.java:365)
>     at org.apache.axis2.description.OutInAxisOperationClient 
> $NonBlockingInvocationWorker.run(OutInAxisOperation.java:444)
>     at  
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
> $Worker.runTask(ThreadPoolExecutor.java:665)
>     at  
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
> $Worker.run(ThreadPoolExecutor.java:690)
>     at java.lang.Thread.run(Unknown Source)
> 2007-1-20 21:37:29 org.apache.axis2.jms2.JMSActiveEchoClient$1 onError
> info: Cannot get JMS Connection factory with props :  
> {java.naming.provider.url=tcp://localhost:61616,  
> java.naming.factory.initial=org.activemq.jndi.ActiveMQInitialContextFa 
> ctory, transport.jms.ConnectionFactoryJNDIName=java:comp/env/jms/ 
> myQueueConnectionFactory}
> 2007-1-20 21:37:30 org.apache.axis2.deployment.DeploymentEngine  
> doDeploy
> info: Deploying module : addressing-1.1
> C:\Axis2_1.1\axis2-1.1\samples\Axis2JmsWorkingSample2 
> \client_repository
> 2007-1-20 21:37:30  
> org.apache.axis2.transport.jms.JMSOutTransportInfo handleException
> error: Cannot get JMS Connection factory with props :  
> {java.naming.provider.url=tcp://localhost:61616,  
> java.naming.factory.initial=org.activemq.jndi.ActiveMQInitialContextFa 
> ctory, transport.jms.ConnectionFactoryJNDIName=java:comp/env/jms/ 
> myQueueConnectionFactory}
> javax.naming.NamingException: scheme java not recognized
>     at org.activemq.jndi.ReadOnlyContext.lookup 
> (ReadOnlyContext.java:198)
>     at javax.naming.InitialContext.lookup(Unknown Source)
>     at  
> org.apache.axis2.transport.jms.JMSOutTransportInfo.getConnectionFactor 
> y(JMSOutTransportInfo.java:85)
>     at org.apache.axis2.transport.jms.JMSOutTransportInfo.<init> 
> (JMSOutTransportInfo.java:69)
>     at org.apache.axis2.transport.jms.JMSSender.invoke 
> (JMSSender.java:66)
>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:670)
>     at org.apache.axis2.description.OutInAxisOperationClient.send 
> (OutInAxisOperation.java:365)
>     at org.apache.axis2.description.OutInAxisOperationClient.execute 
> (OutInAxisOperation.java:295)
>     at org.apache.axis2.client.ServiceClient.sendReceive 
> (ServiceClient.java:579)
>     at org.apache.axis2.client.ServiceClient.sendReceive 
> (ServiceClient.java:508)
>     at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking 
> (RPCServiceClient.java:95)
>     at org.apache.axis2.jms2.JMSActiveEchoClient.test03EchoString 
> (JMSActiveEchoClient.java:249)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>     at java.lang.reflect.Method.invoke(Unknown Source)
>     at junit.framework.TestCase.runTest(TestCase.java:164)
>     at junit.framework.TestCase.runBare(TestCase.java:130)
>     at junit.framework.TestResult$1.protect(TestResult.java:110)
>     at junit.framework.TestResult.runProtected(TestResult.java:128)
>     at junit.framework.TestResult.run(TestResult.java:113)
>     at junit.framework.TestCase.run(TestCase.java:120)
>     at junit.framework.TestSuite.runTest(TestSuite.java:228)
>     at junit.framework.TestSuite.run(TestSuite.java:223)
>     at org.junit.internal.runners.OldTestClassRunner.run 
> (OldTestClassRunner.java:35)
>     at  
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run 
> (JUnit4TestReference.java:38)
>     at org.eclipse.jdt.internal.junit.runner.TestExecution.run 
> (TestExecution.java:38)
>     at  
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests 
> (RemoteTestRunner.java:460)
>     at  
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests 
> (RemoteTestRunner.java:673)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run 
> (RemoteTestRunner.java:386)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main 
> (RemoteTestRunner.java:196)
>
> Lin Sun <linsun.unc@gmail.com> wrote:
> Hi there, you can look at the jms and mdb sample that comes w/  
> geronimo 1.1 doc - http://cwiki.apache.org/GMOxDOC11/jms-and-mdb- 
> sample-application.html. Also I think the daytrader sample also  
> uses the resource-ref and message-destination-ref you mentioned.
>
> HTH, Lin
> ________________________________________
> From: falom [mailto:falom2008@yahoo.com.cn]
> Sent: Friday, January 19, 2007 10:01 PM
> To: user@geronimo.apache.org
> Subject: [geronimo1.1.1] Re: Re: Axis2 war classloader  
> ClassNotFoundException
>
> Hi Lin,
>
> Big thanks for the tip, it worked after a bit struggling with all  
> the resource config in both geronimo and axis2. I will test now to  
> see if axis2 client can call and get response from the server. BTW,  
> do you know a good place to read more about all the ejb config  
> parameters like following:
>
>
> jms/myQueueConnectionFactory
> javax.jms.QueueConnectionFactory
> Container
> Shareable
>
>
>
> jms/myQueue
> javax.jms.Queue
> Produces
> myQueue
>
>
> falom
>
> Lin Sun wrote:
> Hi there, I haven't tried to configure this myself but wonder if  
> you can fix this by creating a Geronimo-web.xml for the axis2 war  
> file. In the Geronimo-web.xml file, you can specify the activemq  
> broker as the dependency of the axis2 war to request the classloder  
> to make the activemq broker avail for the axis2 war.
>
> HTH Lin
>
> ________________________________________
> From: falom [mailto:falom2008@yahoo.com.cn]
> Sent: Thursday, January 18, 2007 9:36 PM
> To: user@geronimo.apache.org
> Subject: [geronimo1.1.1] Axis2 war classloader ClassNotFoundException
>
> Hi,
>
> I installed axis2 war in both tomcat and geronimo.
>
> First I managed to test axis2 jms transport in tomcat connecting to  
> standalone activemq broker by deploying one service using  
> servicelifecycle to start up the jmslistener.
>
> BUT when i deploy the same service in geronimo, while trying  
> connect to the activemq broker within geronimo, i got following  
> exception attached, seems like problem related to classloader, or  
> something else which i am really stuck with. I also reconfigured  
> axis2 listener to use  
> org.activemq.jndi.ActiveMQInitialContextFactory instead of  
> org.apache.activemq.jndi.ActiveMQInitialContextFactory, but same  
> exception.
> I really need some clue what i do wrong, or how to go around this  
> classloading issue.
>
> falom
>
> 22:46:30,709 INFO [JMSActiveEchoServiceLifeCycle]  
> JMSActiveEchoServiceLifeCycle startUp called.
> 22:46:30,719 ERROR [JMSListener] Error connecting to JMS connection  
> factory : TopicConnectionFactory
> javax.naming.NoInitialContextException: Cannot instantiate class:  
> org.apache.activemq.jndi.ActiveMQInitialContextFactory [Root  
> exception is java.lang.ClassNotFoundException:  
> org.apache.activemq.jndi.ActiveMQInitialContextFactory in  
> classloader default/axis211/1164548268298/war]
> at javax.naming.spi.NamingManager.getInitialContext 
> (NamingManager.java:657)
> at javax.naming.InitialContext.getDefaultInitCtx 
> (InitialContext.java:247)
> at javax.naming.InitialContext.init(InitialContext.java:223)
> at javax.naming.InitialContext.(InitialContext.java:197)
> at  
> org.apache.axis2.transport.jms.JMSConnectionFactory.createInitialConte 
> xt(JMSConnectionFactory.java:133)
> at org.apache.axis2.transport.jms.JMSConnectionFactory.connect 
> (JMSConnectionFactory.java:122)
> at  
> org.apache.axis2.transport.jms.JMSListener.initializeConnectionFactori 
> es(JMSListener.java:244)
> at org.apache.axis2.transport.jms.JMSListener.init(JMSListener.java: 
> 104)
> at org.apache.axis2.jms2.JMSActiveEchoServiceLifeCycle.startUp 
> (JMSActiveEchoServiceLifeCycle.java:56)
> at  
> org.apache.axis2.deployment.ServiceBuilder.loadServiceLifeCycleClass 
> (ServiceBuilder.java:354)
> at org.apache.axis2.deployment.ServiceBuilder.populateService 
> (ServiceBuilder.java:136)
> at  
> org.apache.axis2.deployment.repository.util.ArchiveReader.buildService 
> Group(ArchiveReader.java:91)
> at  
> org.apache.axis2.deployment.repository.util.ArchiveReader.processServi 
> ceGroup(ArchiveReader.java:133)
> at org.apache.axis2.deployment.DeploymentEngine.doDeploy 
> (DeploymentEngine.java:528)
> at org.apache.axis2.deployment.repository.util.WSInfoList.update 
> (WSInfoList.java:196)
> at org.apache.axis2.deployment.RepositoryListener.update 
> (RepositoryListener.java:227)
> at org.apache.axis2.deployment.RepositoryListener.checkServices 
> (RepositoryListener.java:174)
> at org.apache.axis2.deployment.DeploymentEngine.loadServices 
> (DeploymentEngine.java:88)
> at org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices 
> (WarBasedAxisConfigurator.java:252)
> at  
> org.apache.axis2.context.ConfigurationContextFactory.createConfigurati 
> onContext(ConfigurationContextFactory.java:72)
> at org.apache.axis2.transport.http.AxisServlet.initConfigContext 
> (AxisServlet.java:373)
> at org.apache.axis2.transport.http.AxisServlet.init 
> (AxisServlet.java:317)
> at org.apache.catalina.core.StandardWrapper.loadServlet 
> (StandardWrapper.java:1105)
> at org.apache.catalina.core.StandardWrapper.load 
> (StandardWrapper.java:932)
> at org.apache.catalina.core.StandardContext.loadOnStartup 
> (StandardContext.java:3915)
> at org.apache.catalina.core.StandardContext.start 
> (StandardContext.java:4176)
> at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201 
> (GeronimoStandardContext.java:67)
> at org.apache.geronimo.tomcat.GeronimoStandardContext 
> $SystemMethodValve.invoke(GeronimoStandardContext.java:337)
> at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke 
> (GeronimoBeforeAfterValve.java:31)
> at org.apache.geronimo.tomcat.GeronimoStandardContext.start 
> (GeronimoStandardContext.java:192)
> at org.apache.catalina.core.ContainerBase.addChildInternal 
> (ContainerBase.java:759)
> at org.apache.catalina.core.ContainerBase.addChild 
> (ContainerBase.java:739)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java: 
> 524)
> at org.apache.geronimo.tomcat.TomcatContainer.addContext 
> (TomcatContainer.java:313)
> at org.apache.geronimo.tomcat.TomcatContainer$$FastClassByCGLIB$ 
> $9370b073.invoke()
> at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
> (FastMethodInvoker.java:38)
> at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
> (GBeanOperation.java:122)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:817)
> at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
> (RawInvoker.java:57)
> at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
> (RawOperationInvoker.java:35)
> at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
> (ProxyMethodInterceptor.java:96)
> at org.apache.geronimo.tomcat.TomcatContainer$$EnhancerByCGLIB$ 
> $f3376869.addContext()
> at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart 
> (TomcatWebAppContext.java:438)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance 
> (GBeanInstance.java:981)
> at  
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart( 
> GBeanInstanceState.java:267)
> at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start 
> (GBeanInstanceState.java:102)
> at  
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive 
> (GBeanInstanceState.java:124)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive 
> (GBeanInstance.java:540)
> at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean 
> (BasicKernel.java:379)
> at  
> org.apache.geronimo.kernel.config.ConfigurationUtil.startConfiguration 
> GBeans(ConfigurationUtil.java:374)
> at  
> org.apache.geronimo.kernel.config.KernelConfigurationManager.start 
> (KernelConfigurationManager.java:187)
> at  
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConf 
> iguration(SimpleConfigurationManager.java:527)
> at  
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConf 
> iguration(SimpleConfigurationManager.java:508)
> at org.apache.geronimo.kernel.config.SimpleConfigurationManager$ 
> $FastClassByCGLIB$$ce77a924.invoke()
> at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
> (FastMethodInvoker.java:38)
> at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
> (GBeanOperation.java:122)
> at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
> (GBeanInstance.java:817)
> at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
> (RawInvoker.java:57)
> at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
> (RawOperationInvoker.java:35)
> at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
> (ProxyMethodInterceptor.java:96)
> at org.apache.geronimo.kernel.config.EditableConfigurationManager$ 
> $EnhancerByCGLIB$$d98215e2.startConfiguration()
> at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:297)
> at org.apache.geronimo.system.main.Daemon.(Daemon.java:74)
> at org.apache.geronimo.system.main.Daemon.main(Daemon.java:377)
>
>
>
>
> ________________________________________
> 抢注雅虎免费邮箱-3.5G容量,20M附件!
>
>
>
> Mp3疯狂搜-新歌热歌高速下


Mime
View raw message