怎样用axis发布一个webservice,步骤总结(通过wsdd文件的方式来发布):
一. 怎样产生一个wsdl文件。
方法一:定义一个接口,让它继承远程调用Remote接口, 再定义一个类实现该接口的方法。
也可以直接定义一个类以及它的方法。然后通过org.apache.axis.wsdl.Java2WSDL2将该接口的生成wsdl文件。
测试一:
-o DecryptSoapService_1.wsdl
-l"http://localhost:8088/DecryptPlatForm/services/AdminService"
com.hw.dp.business.realtimedecrption.service1.DecryptSoapServiceSOAPImpl
测试二:
-o DecryptSoapService_2.wsdl
-l"http://localhost:8088/DecryptPlatForm/services/DecryptSoapServiceSOAP"
com.hw.dp.business.realtimedecrption.service1.DecryptSoapServiceSOAP
方法二: 也可以根据双方约定自己编写一个wsdl文件通过下面的步骤自动生成代码。
二. 生成服务代码和wsdd部署文件
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\service
set Package=realtimedecrption.service
set axis_server=http://localhost:8088/servlet/AxisServlet
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% -s DecryptSoapService.wsdl [生成服务代码和wsdd部署文件 -s]
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.wsdl.WSDL2Java类,加入以下参数后运行。
-o d:\test_webservice\src -p com.hw.dp.business.realtimedecrption.service -s d:\test_webservice\DecryptSoapService.wsdl 或
-od:\test_webservice\src -pcom.hw.dp.business.realtimedecrption.service -s d:\test_webservice\DecryptSoapService.wsdl
最后把文件编译后放到classes中之后将自动生成的wsdd文件放到web-inf中。
三. 生成service-config.xml文件,客户端浏览器可以直接http访问该webservice获取wsdl文件
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\config
set Package=realtimedecrption.service
set axis_server=http://127.0.0.1:8088/DecryptPlatForm/servlet/AxisServlet 或者
http://127.0.0.1:8088/DecryptPlatForm/services/AdminService
%Java_Cmd% org.apache.axis.client.AdminClient deploy.wsdd -l%axis_server% (注意deploy.wsdd的路径)
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.client.AdminClient类,加入以下参数后运行。
D:\test_webservice\src\com\hw\dp\business\realtimedecrption\service\deploy.wsdd -lhttp://127.0.0.1:8088/DecryptPlatForm/services/AdminService
注:
需要将axis相关启动配置集成到你的应用中的web.xml中,然后还需要启动你的应用才能生成service-config.xml文件,
生成的文件会直接定向到tomcat对应的服务的WEB-INF目录下。
要检查http://127.0.0.1:8088/DecryptPlatForm/servlet/AxisServlet 或者 http://127.0.0.1:8088/DecryptPlatForm/services/AdminService
是否可正常显示。如果不能正常显示,则生成service-config.xml报错,需要检查web.xml文件配置是否正确。
四. 生成客户端
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\DPclient
set Package=realtimedecrption.client
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% DecryptSoapService.wsdl
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.wsdl.WSDL2Java类,加入以下参数后运行。
-o d:\test_webservice\src -p com.hw.dp.business.realtimedecrption.client d:\test_webservice\DecryptSoapService.wsdl
五. 客户端调用。
public static void main(String[] args ) throws Exception
{
java.net.URL url = new java.net.URL("http://localhost:8088/DecryptPlatForm/services/DecryptSoapServiceSOAP?wsdl");
DecryptSoapServiceSOAPStub stub = new DecryptSoapServiceSOAPStub(url , null);
}
一. 怎样产生一个wsdl文件。
方法一:定义一个接口,让它继承远程调用Remote接口, 再定义一个类实现该接口的方法。
也可以直接定义一个类以及它的方法。然后通过org.apache.axis.wsdl.Java2WSDL2将该接口的生成wsdl文件。
测试一:
-o DecryptSoapService_1.wsdl
-l"http://localhost:8088/DecryptPlatForm/services/AdminService"
com.hw.dp.business.realtimedecrption.service1.DecryptSoapServiceSOAPImpl
测试二:
-o DecryptSoapService_2.wsdl
-l"http://localhost:8088/DecryptPlatForm/services/DecryptSoapServiceSOAP"
com.hw.dp.business.realtimedecrption.service1.DecryptSoapServiceSOAP
方法二: 也可以根据双方约定自己编写一个wsdl文件通过下面的步骤自动生成代码。
二. 生成服务代码和wsdd部署文件
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\service
set Package=realtimedecrption.service
set axis_server=http://localhost:8088/servlet/AxisServlet
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% -s DecryptSoapService.wsdl [生成服务代码和wsdd部署文件 -s]
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.wsdl.WSDL2Java类,加入以下参数后运行。
-o d:\test_webservice\src -p com.hw.dp.business.realtimedecrption.service -s d:\test_webservice\DecryptSoapService.wsdl 或
-od:\test_webservice\src -pcom.hw.dp.business.realtimedecrption.service -s d:\test_webservice\DecryptSoapService.wsdl
最后把文件编译后放到classes中之后将自动生成的wsdd文件放到web-inf中。
三. 生成service-config.xml文件,客户端浏览器可以直接http访问该webservice获取wsdl文件
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\config
set Package=realtimedecrption.service
set axis_server=http://127.0.0.1:8088/DecryptPlatForm/servlet/AxisServlet 或者
http://127.0.0.1:8088/DecryptPlatForm/services/AdminService
%Java_Cmd% org.apache.axis.client.AdminClient deploy.wsdd -l%axis_server% (注意deploy.wsdd的路径)
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.client.AdminClient类,加入以下参数后运行。
D:\test_webservice\src\com\hw\dp\business\realtimedecrption\service\deploy.wsdd -lhttp://127.0.0.1:8088/DecryptPlatForm/services/AdminService
注:
需要将axis相关启动配置集成到你的应用中的web.xml中,然后还需要启动你的应用才能生成service-config.xml文件,
生成的文件会直接定向到tomcat对应的服务的WEB-INF目录下。
要检查http://127.0.0.1:8088/DecryptPlatForm/servlet/AxisServlet 或者 http://127.0.0.1:8088/DecryptPlatForm/services/AdminService
是否可正常显示。如果不能正常显示,则生成service-config.xml报错,需要检查web.xml文件配置是否正确。
四. 生成客户端
方式一(DOS环境下):
set Axis_Lib=D:\axis-bin-1_4\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\axis-bin-1_4\axis-1_4\src\DPclient
set Package=realtimedecrption.client
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% DecryptSoapService.wsdl
方式二(IDE环境下):
在MyEclipse下将axis.jar相关包导放项目中后, 找到org.apache.axis.wsdl.WSDL2Java类,加入以下参数后运行。
-o d:\test_webservice\src -p com.hw.dp.business.realtimedecrption.client d:\test_webservice\DecryptSoapService.wsdl
五. 客户端调用。
public static void main(String[] args ) throws Exception
{
java.net.URL url = new java.net.URL("http://localhost:8088/DecryptPlatForm/services/DecryptSoapServiceSOAP?wsdl");
DecryptSoapServiceSOAPStub stub = new DecryptSoapServiceSOAPStub(url , null);
}