分享
 
 
 

axis 的客户端使用

王朝other·作者佚名  2006-11-16
窄屏简体版  字體: |||超大  

1. http://ws.apache.org/Axis/下载 axis-1_2_1 解压放在 D:\softSetup\下

2.下载 apache-ant-1.6.1 解压放在D:\softSetup\下

3.环境变量设置:

JAVA_HOME=C:\jdk1.5.0_06

CATALINA_HOME=tomcat-5.5.15

ANT_HOME=D:\softSetup\apache-ant-1.6.1

AXISCLASSPATH=%AXIS_LIB%\activation.jar;%AXIS_LIB%\mail.jar;%AXIS_LIB%\axis.jar;%AXIS_LIB% \wsdl4j.jar;%AXIS_LIB%\axis-ant.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\xerces.jar;%AXIS_LIB%\junit.jar;%AXIS_LIB%\wsdl4j-1.5.1.jar

AXIS_HOME=D:\softSetup\axis-1_2_1

AXIS_LIB=%AXIS_HOME%\lib

CATALINA_HOME=D:\softSetup\jakarta-tomcat-5.0.24

classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%AXISCLASSPATH%

path=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%CATALINA_HOME%\bin;%ANT_HOME%\bin

4.在命令行 运行set 确保新加的环境变量生效

5.根据合作伙伴给的wsdl地址 http://www.****.com/services/OrderService?wsdl保存下来到D:\project\test\wsdl\OrderService.wsdl

6.在命令行 切换到 D:\project\test\wsdl\下运行axis的WSDL2Java 命令: java org.apache.axis.wsdl.WSDL2Java OrderService.wsdl 生成 bean 文件,***Service.java,***ServiceLocator.java,***ServiceSoapBindingStub.java 等文件,可以用Axis的wsdl2java生成web service的客户端,wsdl2java生成的客户端是stub方式的。它包括endpoint借口、实现该接口的stub、 serviceLocator、可选的单元测试代码。其中,serviceLocator中hard code了服务端地址.

7. 应用.写一个表单jsp,提交到下面jsp文件进行处理(可以写在类里,此处简单处理)

<%@ page contentType="text/html; charset=GBK"%>

<%@page import="org.apache.axis.client.Call"%>

<%@page import="javax.xml.namespace.QName"%>

<%@page import="java.net.MalformedURLException"%>

<%@page import="java.rmi.RemoteException"%>

<%@page import="java.util.*"%>

<%@page import="java.net.URL"%>

<%@page import="org.apache.axis.client.Service"%>

<%@page import="com.newSky.datainterface.beans.*"%>

<%!

private final static String success = "测试完成";

private final static String fail = "测试失败:";

final static String endPoint = "http://www.***.com/services/OrderService";

final static String portName = "addNewOrder";

final static String nameSpace = "http://beans.datainterface.newSky.com";

%>

<html>

<head></head>

<body>

<%

try {

Call call = null;

URL url = null;

try {

//create new url

url = new URL(endPoint);

}

catch (MalformedURLException e) {

System.out.println(fail + e.getMessage());

e.printStackTrace();

}

//create new service

Service service = new Service();

try {

//create new call

call = (Call) service.createCall();

}

catch (Exception se) {

System.out.println(fail + se.getMessage());

se.printStackTrace();

}

//设置服务器

call.setTargetEndpointAddress(url);

//设置端口

call.setOperationName(new QName(endPoint, portName));

//***********************

//注册类,开始

try {

QName qn1 = new QName(nameSpace, "OrderUserData");

call.registerTypeMapping(OrderUserData.class, qn1,

new org.apache.axis.encoding.ser.BeanSerializerFactory(OrderUserData.class, qn1),

new org.apache.axis.encoding.ser.BeanDeserializerFactory(OrderUserData.class, qn1));

}

catch (Exception EQ) {

EQ.printStackTrace();

}

//注册类,结束

//设置返回类型

// set bean 此处省略。。

try {

//调用服务

System.out.println("************* 测试开始 ******************");

call.setUsername(request.getParameter("id"));

String result = (String) call.invoke(new Object[] {new Integer(request.getParameter("id)),

new String(request.getParameter("pwd")), orderData});

System.out.println(result);

if(result.equals("-100")){

out.write("用户名密码错误");

}

else{

out.write("成功");

}

System.out.println("************* 测试完成 ******************");

}

catch (RemoteException re) {

System.out.println(fail + re.getMessage());

//re.printStackTrace();

}

}

catch (Exception e) {

// e.printStackTrace();

}

%>

</body>

</html>

8. ok ^_^

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有