Vague error produced for ServiceClient invocation within a service where class 
pathing is a problem
---------------------------------------------------------------------------------------------------

                 Key: AXIS2-2972
                 URL: https://issues.apache.org/jira/browse/AXIS2-2972
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: databinding, deployment
    Affects Versions: 1.2
         Environment: Running in windows XP under eclipse and with axis2 1.2 
embedded under Jetty.
            Reporter: Jason Kania


The problem I have seen occurs when a component is not in the deployment 
directory, but is being referenced externally. Instead of encountering a 
ClassNotFoundException or similar, a vague error is produced when attempting to:

1) create a ServiceClient within a service
2) load a configuration context within a service

The client was external to the jar because it will be used both remotely and as 
a part of the service. The text of the exception is misleading because the 
receivers in use as per the services.xml have nothing to do with those seen in 
the error.

To create the error, simply attempt to create a new ServiceClient() in a class 
that is not contained within the deployment directory, but is referenced by a 
class in the deployment directory.

The error seen is the following:
java.lang.ClassCastException: 
org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver cannot be cast to 
org.apache.axis2.engine.MessageReceiver
        at 
org.apache.axis2.deployment.DescriptionBuilder.loadMessageReceiver(DescriptionBuilder.java:190)
        at 
org.apache.axis2.deployment.DescriptionBuilder$1.run(DescriptionBuilder.java:142)
        at 
org.apache.axis2.java.security.AccessController.doPrivileged(AccessController.java:130)
        at 
org.apache.axis2.deployment.DescriptionBuilder.processMessageReceivers(DescriptionBuilder.java:138)
        at 
org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:92)
        at 
org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:640)
        at 
org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:105)
        at 
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:60)
        at 
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromFileSystem(ConfigurationContextFactory.java:174)
        at 
org.apache.axis2.client.ServiceClient.initializeTransports(ServiceClient.java:211)
        at 
org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:138)
        at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:133)
        at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:229)
        at com.test.client.BasicClient.<init>(BasicClient.java:76)
        at com.test.client.TestClient.<init>(TestClient.java:31)
        at com.test.client.servlet.TestServer.<init>(TestServer.java:452)
        at com.test.client.TestServer.getInstance(TestServer.java:65)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
com.test.client.ClientMessageHandler.init(ClientMessageHandler.java:51)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.axis2.engine.DependencyManager.initServiceClass(DependencyManager.java:56)
        at 
org.apache.axis2.engine.DependencyManager.initService(DependencyManager.java:94)
        at 
org.apache.axis2.context.ConfigurationContextFactory.initApplicationScopeServices(ConfigurationContextFactory.java:91)
        at 
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:76)
        at 
org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:486)
        at 
org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:406)
        at 
org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:433)
        at 
org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:256)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at 
org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:617)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
        at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
        at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
        at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at 
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at 
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
        at org.mortbay.jetty.Server.doStart(Server.java:210)
        at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at com.test.TestServer.<init>(TestServer.java:52)
        at com.test.TestServer.main(TestServer.java:83)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to