二 Apache SOAP 部署 Webservice
Soap更新到2.3.1,2000年
配置Apache SOAP
下载soap-2_3_1.zip、javamail1_4_7.zip、Xerces-j-bin.2.11.0.zip、jaf-1_1-fr.zip并解压。
将解压后的\soap-2_3_1\webapps 下的soap 更改为需要的名字(webservice)并拷贝到tomcat的webapps 下。
在WEB-INFO 下新建 classes (放置编译后的类文件)和lib (放置引用的Jar)文件夹(可以先将soap-2_3_1\webapps\soap.war 部署到Tomcat,参照文件夹结构)。
将之前下载的Jar拷贝到lib 文件夹下
启动tomcat后,测试SOAP部署是否可用。
服务端程序
新建Java Project,创建测试代码。
将bin目录下的文件(文件夹+类文件)拷贝至webapps\soap\WEB-INF\classes 下。
注册服务
1、通过界面部署
点击Run---Deploy
ID: 唯一标示
Scope:Request Response Application
Methods: 类的方法,以空格分开
Provide Type:Java
Provide Class: 类的全路径,包+类
Static: no
部署后会在根文件夹下生成一个DeployedServices.ds 文件,也可点击List查看所有部署的webService.
2、通过命令部署
创建环境变量:
SOAP_LIB: soap的lib库目录
SOAPCLASSPATH: lib下的jar(只填写soap.jar应该也可以)
创建deploy.xml ,内容如下:
在deploy.xml 目录下运行如下命令,进行部署:
java -cp %SOAPCLASSPATH% org.apache.soap.server.ServiceManagerClient http://localhost:8080/soap-profile/servlet/rpcrouter deploy deploy.xml
部署完成后会生成一个.ds文件
客户端调用
创建Java Project 项目,引入全部SOAP lib下的jar包(只引入soap.jar和mail.jar也可以)。并根据需要引入开发所需的额外jar包。
客户端代码
点击Visit 可获取URL地址,soap是文件夹的名字
运行,客户端(Eclipse)和服务端(Tomcat)的返回结果
遇到的问题
方法修饰符莫名其妙写成Private:
URL写错会有如下错误: