You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2002/09/17 15:59:04 UTC

DO NOT REPLY [Bug 12737] New: - reference to AxisServer fails

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=12737>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=12737

reference to AxisServer fails

           Summary: reference to AxisServer fails
           Product: Axis
           Version: current (nightly)
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Deployment / Registries
        AssignedTo: axis-dev@xml.apache.org
        ReportedBy: chris.peake@ca.com


Moved from beta 2 to RC1. 

Fail to get a reference to AxisServer. 

Situation: 
Previously,  a user deployed a service from a jar that was in the classpath and 
updated the server-config.wsdd. 
If for whatever reasons, the container was stopped.  (in this case tomcat).  
And the 'jar' that had services deployed from it

now is removed from the classpath, when we startup Axis and try to get a 
reference to the AxisServer, we fail because of the

WSDDException that is wrapped from a 'ClassNotfoundExcetpion'. 
  
Looks like on startup now, the server-config.wsdd is 'validated'. 
Previously, this was not the case. 

Is there any way to get around this? 

I've tried catching an exception but I simply can't get a reference to the 
AxisServer using 
AxisServer axisserverref = AxisServlet.getEngine(servlet); 

Return from the above statement is 'null' if on startup a service description 
is still in server-config.wsdd but teh jar that contains this deployed class 
has been removed from the classpath.

I would like to handle the users experience a little nicer than just failing to 
start up. 

If this is the desired behavior, I would like 'option' to turn off this 
behavior.

org.apache.axis.deployment.wsdd.WSDDException: 
java.lang.ClassNotFoundException: peakeserver.EchoComplex 
java.lang.ClassNotFoundException: peakeserver.EchoComplex       at 
org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1307)  at 
org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1156)  at java.lang.ClassLoader.loadClassInternal
(ClassLoader.java:315)        at java.lang.Class.forName0(Native Method)      
at java.lang.Class.forName(Class.java:120)      at 
org.apache.axis.utils.ClassUtils$2.run(ClassUtils.java:197)  at 
java.security.AccessController.doPrivileged(Native Method)   at 
org.apache.axis.utils.ClassUtils.loadClass(ClassUtils.java:171)      at 
org.apache.axis.utils.ClassUtils.forName(ClassUtils.java:112)        at 
org.apache.axis.deployment.wsdd.WSDDTypeMapping.getLanguageSpecificType
(WSDDTypeMapping.java:221)    at 
org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping
(WSDDService.java:502)  at org.apache.axis.deployment.wsdd.WSDDService.initTMR
(WSDDService.java:637)    at org.apache.axis.deployment.wsdd.WSDDService.<init>
(WSDDService.java:234)     at 
org.apache.axis.deployment.wsdd.WSDDDeployment.<init>
(WSDDDeployment.java:242)       at 
org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:107)   at 
org.apache.axis.configuration.FileProvider.configureEngine
(FileProvider.java:217)    at org.apache.axis.AxisEngine.init
(AxisEngine.java:188)         at org.apache.axis.AxisEngine.<init>
(AxisEngine.java:173)       at org.apache.axis.server.AxisServer.<init>
(AxisServer.java:127)        at 
org.apache.axis.server.DefaultAxisServerFactory.createServer
(DefaultAxisServerFactory.java:152)      at 
org.apache.axis.server.DefaultAxisServerFactory.getServer
(DefaultAxisServerFactory.java:116)         at 
org.apache.axis.server.AxisServer.getServer(AxisServer.java:112)     at 
org.apache.axis.transport.http.AxisServletBase.getEngine
(AxisServletBase.java:221)