WebServices axis

客户端                                                      远程对象
  |                                                        |
stub(存根) ----     协议(soap/rmi-iiop/iiop...)---   skeleton(骨架) 
       
对象序列化后传到我的JVM再把它转化成对象
序列化都要解压,效率低。
存根(STUB)代理,远程对象在客户端的代理。代理里面来封装访问细节,怎么压包,解压。
skeleton(骨架)解成JAVA对象,压缩,
分布通信,存根和骨架的通信。
是一个典型的代理。
异构系统整合,多语言开发,效率差。


使用Axis在Tomcat下发布Webservice有如下几个步骤:

(1)用JavaBean写好要发布的服务的定义

(2)使用Java2WSDL命令,根据JavaBean生成WSDL文件

(3)使用Wsdl2Java命令,根据WSDL文件生成服务端源代码,以及deploy.wsdd文件

(4)根据deploy.wsdd文件在tomcat下发布Webservice服务       

deploy.bat

set axis_home=E:\java-tool\axis-bin-1_4\lib
set axis_path=%axis_home%\axis-ant.jar  
set axis_path=%axis_path%;%axis_home%\axis.jar  
set axis_path=%axis_path%;%axis_home%\commons-discovery-0.2.jar  
set axis_path=%axis_path%;%axis_home%\commons-logging-1.0.4.jar  
set axis_path=%axis_path%;%axis_home%\jaxrpc.jar;  
set axis_path=%axis_path%;%axis_home%\log4j-1.2.8.jar  
set axis_path=%axis_path%;%axis_home%\saaj.jar  
set axis_path=%axis_path%;%axis_home%\wsdl4j-1.5.1.jar  
set CLASSPATH=%CLASSPAHT%;%axis_path%  
java org.apache.axis.client.AdminClient -l"http://localhost:9000/axis/services/UserManage" deploy.wsdd 

java2wsdl.bat

java org.apache.axis.wsdl.Java2WSDL -n "urn:UserManage"  -p"com.huawei.mtv.commons.services" "urn:UserManage" -o "UserManage.wsdl" -l "http://localhost:8080/axis/services/UserManage"   com.huawei.mtv.commons.services.UserManage

wsdl2java.bat

java org.apache.axis.wsdl.WSDL2Java --server-side --skeletonDeploy true UserManage.wsdl


http://blog.csdn.net/zhangzhaokun/category/606327.aspx

你可能感兴趣的:(xml,webservice,jms,SOAP,SOA)