webservice 即时发布 报错说找不到class文件
http://127.0.0.1:8080/axis/HelloWS.jws?wsdl
Sorry, something seems to have gone wrong... here are the details:
Fault - ; nested exception is:
java.io.FileNotFoundException: D:\tomcat7\webapps\axis\WEB-INF\jwsClasses\HelloWS.class (系统找不到指定的文件。)
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.FileNotFoundException: D:\tomcat7\webapps\axis\WEB-INF\jwsClasses\HelloWS.class (系统找不到指定的文件。)
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname:admin-PC
原因是 HelloWS.jws 是由HelloWS.java 文件直接重命名得到的,里面包含了package的路径,而在axis的及时发布中是不允许的,去掉即可。
错误的
package com.demo.action; //错就错在这一行
public class HelloWS {
public String firstwsmethod(String a,String b){
String result="a="+a+" b="+b;
return "You are gteat,the result is "+result;
}
}
正确的
public class HelloWS {
public String firstwsmethod(String a,String b){
String result="a="+a+" b="+b;
return "You are gteat,the result is "+result;
}
}
本文解决了一个关于WebService即时发布时报错的问题,错误提示为找不到特定的.class文件。问题根源在于Java类文件包含包路径声明,不符合Axis框架的要求。通过移除包路径声明解决了问题。

被折叠的 条评论
为什么被折叠?



