接着上文我们来说一下建好的WebService工程如何在Tomcat下发布。
1.安装好Tomcat,我用的是apache-tomcat-6.0.32
2.在MyEclipse里面配置好Tomcat,这里配置就不多说了,不会的可以到google里搜一下。
3.配置WebService工程下面的 /WebContent/WEB-INF/web.xml
我是这样配的:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xsd</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>
</web-app>
这是我完整的Web.xml中内容。
4.这时候我们在MyEclipse里面启动Tomcat
在IE里敲入:http://localhost:8080/VacSyncService/services 如图所示
图上显示已经有2个WSDL了,是AXIS自带的,是在Web.xml里面配置的。那么我们需要发布自己的Wsdl怎么办?接着往下看:
这是关键:通过生成java code下的deploy.wsdd 来生成server-config.wsdd 发布我们自己的wsdl
首先我们在生成java code下找到deploy.wsdd 把它拷贝到工程的 /WebContent/WEB-INF 下面
通过MyEclipse把这个改变发布到Tomcat的webapps下 C:/apache-tomcat-6.0.32/webapps/VacSyncService/WEB-INF
这时启动Tomcat
通过Win的cmd 到 C:/apache-tomcat-6.0.32/webapps/VacSyncService/WEB-INF 目录下
敲入如下命令:
C:/apache-tomcat-6.0.32/webapps/VacSyncService/WEB-INF>java -Djava.ext.dirs="D:/
workspace/VacSyncService/WebContent/WEB-INF/lib" org.apache.axis.client.AdminCli
ent -lhttp://localhost:8080/VacSyncService/services/AdminService deploy.wsdd
-Djava.ext.dirs 是Aixs的lib包路径
http://localhost:8080/VacSyncService/services/AdminService 这个是Aixs自带一个wsdl服务的URL,记住http前面还有个"-l"
如果命令中这个URL错误或不写,会无法生成server-config.wsdd ,抛 404 not found错误。
如果正确会输出:
Processing file deploy.wsdd
<Admin>Done processing</Admin>
这时在C:/apache-tomcat-6.0.32/webapps/VacSyncService/WEB-INF 下就生成了server-config.wsdd 文件。
重启Tomcat
在IE中输入:http://localhost:8080/VacSyncService/services 如下图:
这时会看到我们自己的wsdl已经发布出来了。