2011-08-12 89 views
2

我已經寫了一個web服務,它在UI上正常工作並且所有單元測試都通過了。 我可以向Webservice發送請求和響應。在運行web服務和AXIS2的tomcat服務器日誌中的java.lang.ClassCastException

但是,當我檢查服務器日誌,我看到這種堆棧跟蹤。 有沒有人看過這個例外?

我使用Axis2,Java 6中,和Tomcat 6

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:192) 
    at org.apache.axis2.deployment.DescriptionBuilder$1.run(DescriptionBuilder.java:145) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.apache.axis2.java.security.AccessController.doPrivileged(AccessController.java:139) 
    at org.apache.axis2.deployment.DescriptionBuilder.processMessageReceivers(DescriptionBuilder.java:141) 
    at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:102) 
    at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:641) 
    at org.apache.axis2.deployment.WarBasedAxisConfigurator.<init>(WarBasedAxisConfigurator.java:157) 
    at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:516) 
    at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:436) 
    at org.apache.axis2.transport.http.AxisAdminServlet.init(AxisAdminServlet.java:55) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 

回答

1

當類是從不同的類加載器加載可能發生這種情況。

請確保類路徑中只有一個axis2 JAR,並且您的應用程序無法從同一臺服務器上的其他應用程序看到Axis2 JAR。

+1

+1 - Axis已經看過很多類似的東西。 – serg10