免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1467 | 回复: 0
打印 上一主题 下一主题

java调用webservice示例 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-11 14:23 |只看该作者 |倒序浏览
http://topic.csdn.net/t/20030403/09/1612072.html
java里使用webservice 安装配置Axis
http://ws.apache.org/axis/releases.html
~~安装Tomcat 4.X以上版本(4.X后的版本都带XML的解析器)
~~解压Axis1.1.zip包,找到webapps目录下的axis文件夹,拷贝axis文件夹到Tomcat中的webapps文件夹下。
~~将Tomcat中的axis目录下的WEB-INF\lib中的所有的文件copy到Tomcat的common\lib目录中。(以后凡是要在axis的lib中添加jar文件,都要copy一份到Tomcat的common\lib目录下)。
~~我的电脑->属性->高级->环境变量->系统变量中添加:
AXIS_HOME
%TOMCAT_HOME%\webapps\axis(TOMCAT的目录)
AXIS_LIB
%AXIS_HOME%\lib
AXISCLASSPATH
%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery.jar; %AXIS_LIB%\commons-logging.jar;%AXIS_LIB%\jaxrpc.jar; %AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar; %AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar
修改CLASSPATH ,在末尾加上:
%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery.jar; %AXIS_LIB%\commons-logging.jar;%AXIS_LIB%\jaxrpc.jar; %AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar; %AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar
注意检查CLASSPATH是否正确:(有些软件会在用户变量区设置一个classpath,会有影响,如:XMLSPY)
在DOS方式下
输命令:Echo %CLASSPATH%
~~检查配置:
启动Tomcat,访问http://localhost:8080/axis/,
验证axis的是否工作:http://localhost:8080/axis/happyaxis.jsp如果正常显示表示正常。
上图中 倒数第3行字“The core axis libra….”,要保证core axis libraries are present,如果有任何core library is missing,就到其提供的相应的链接上找到对应的jar文件,并copy到tomcat目录里面的axis文件夹WEB-INF\lib中,别忘了 Tomcat自己的common\lib也copy一份
好啦基本上都配置好了。现在我们开始做一个有点模样的web Service的例子啦。一步一步来:)
写一个java源代码HelloClient.jws 放到服务器axis文件夹下并访问http://localhost:8080/axis/HelloClient.jws
客户端写调用服务器的测试代码testjws.java,编译,运行java testjws  
import   java.util.Vector;  
  import   org.apache.axis.client.Call;  
  import   org.apache.axis.client.Service;  
  import   javax.xml.rpc.namespace.QName;  
  import   org.apache.axis.encoding.XMLType;  
     
  public   class   TestClient   {  
  public   static   void   main(String   []   args)   
  {  
  try   
  {  
  String   endpoint   =   "http://218.97.169.38/services/MyService";  
  Service     service   =   new   Service();  
  Call           call         =   (Call)   service.createCall();  
  call.setTargetEndpointAddress(   new   java.net.URL(endpoint)   );  
  Float   i   =   new   Float(1);  
  Float   j   =   new   Float(2);  
  call.setOperationName(   "add"   );  
  call.addParameter("i",org.apache.axis.encoding.XMLType.XSD_FLOAT,javax.xml.rpc.ParameterMode.PARAM_MODE_IN);  
  call.addParameter("j",org.apache.axis.encoding.XMLType.XSD_FLOAT,javax.xml.rpc.ParameterMode.PARAM_MODE_IN);  
  call.setReturnType(   XMLType.XSD_FLOAT);  
  Float   ret   =   (Float)call.invoke(   new   Object[]   {i,j}   );  
  System.out.println("Got   result   :   "   +   ret);  
  }   catch   (Exception   e)   {  
  System.err.println(e.toString());  
  }  
  }  
  }
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/11458/showart_970973.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP