//Axis 下 的WebService 客户端接入 简单模版
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;
import javax.xml.soap.SOAPException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.message.SOAPHeaderElement;
public class WSUnit2 {
public WSUnit2() {
}
/**
* @param args
*/
public static void main(String[] args) {
try {
// 服务端的url,需要根据情况更改
String endpointURL = "http://www.xxx.cn/xxxServiceTest/WebService.asmx";
String namespace = "http://www.xxx.cn/";
String methodName = "GetDestCityList";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpointURL);
call.setSOAPActionURI(namespace + methodName);
call.setOperationName(new QName(namespace, methodName));
call.setUseSOAPAction(true);
// 由于需要认证,故需要设置调用的用户名和密码。
SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement(
namespace, "StationServiceHeader");
soapHeaderElement.setNamespaceURI(namespace);
try {
soapHeaderElement.addChildElement("UserName").setValue("xxx");
soapHeaderElement.addChildElement("PassWord").setValue("xxx");
} catch (SOAPException e) {
e.printStackTrace();
}
call.addHeader(soapHeaderElement);
//设置返回类型
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
//参数类型
call.addParameter(new QName(namespace, "start_city"),
org.apache.axis.encoding.XMLType.XSD_STRING,
ParameterMode.IN);
call.addParameter(new QName(namespace, "end_city"),
org.apache.axis.encoding.XMLType.XSD_STRING,
ParameterMode.IN);
//执行调用
String start_city = "浙江";
String end_city = "hz";
String result = (String) call.invoke(new Object[] { start_city,
end_city });
System.out.println("result = " + result);
} catch (ServiceException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
在Tomcat的`webapps`目录下创建一个名为`axis2/WEB-INF/services/HelloWorldService`的目录,并将`HelloWorldService.jar`和相关的`.aar`文件放入其中。 5. 测试服务端 启动应用服务器,访问`...
3. **部署服务**:将生成的`.aar`包放入Axis2服务器的`repository/services`目录下。Axis2会自动扫描该目录,加载并部署服务。一旦部署成功,服务就可以通过SOAP请求访问了。 接下来,我们来看如何生成客户端代码...
### 客户端接入 1. **生成Stub**:使用Axis2的wsdl2java工具,根据服务的WSDL生成客户端存根类。 2. **编写客户端代码**:在生成的存根类基础上,编写客户端应用程序,调用服务接口。 3. **运行客户端**:运行...
将生成的`HelloWorldService.java`编译成class文件,然后在Axis1.4的部署目录下创建一个服务描述文件(`.aar`档案)。将WSDL文件和编译后的类文件放入这个档案中。接着,通过Axis1.4的管理界面或命令行工具部署服务...
- 使用Axis的`wsdl2java`工具,将服务接口转换为WSDL文件和对应的Java客户端代码。在命令行中运行: ``` wsdl2java -uri HelloWorldService.wsdl -d . -s ``` - 这将生成`HelloWorldService.java`服务类和`...
- **部署服务**: 将服务打包成AAR,放入Axis2的部署目录,或者通过管理控制台在线部署。 - **生成客户端**: 使用wsdl2java工具,根据服务的WSDL生成客户端代码。 - **测试调用**: 编写客户端程序,实例化服务代理...
接下来,我们详细讲解如何创建和使用Axis2 Web服务客户端: 1. **获取依赖库**:首先,你需要下载Axis2的客户端库,这通常可以从Apache官方网站或通过Maven仓库获取。压缩包文件"axis2客户端最少jar包-self.rar...
将下载的WAR文件放入Tomcat的webapps目录下,启动Tomcat后,WAR文件会自动解压为axis2目录。你可以通过浏览器访问`http://localhost:8080/axis2/`来验证Axis2是否已成功部署。 为了在Eclipse中使用Axis2,你需要...
总结,Axis2 Webservice端例子旨在帮助开发者了解如何在Axis2环境下构建和发布Web服务。通过定义服务接口、实现业务逻辑、创建WSDL描述和服务打包,以及在服务器上部署和调用,我们可以掌握Axis2的核心工作原理。...
3. **部署服务**:将编译后的POJO类放入Web容器的指定目录下,Axis2会自动识别并发布为Web服务。 4. **测试和调用**:通过浏览器或者客户端工具访问Web服务的URL,可以测试服务是否正常工作。 5. **跨语言调用**:...
3. **部署服务**:将服务类和部署文件放入Servlet容器的相应目录下。 4. **启动服务**:启动Servlet容器,Web服务即可被访问。 5. **测试服务**:运行生成的客户端代码,调用Web服务并查看返回结果。 通过以上步骤...
【标题】:Axis2集成SSH搭建WebService支持事务的详细教程 【描述】:本文将详细介绍如何在项目中集成Axis2和SSH框架,以构建支持事务的WebService。通过本教程,你将了解到如何按照传统的SSH方式编写代码,如何...
将生成的服务类和web.xml放入Tomcat或其他Web服务器的Web应用目录下。启动服务器,Web服务就已经部署好了。服务的URL通常是`http://your-server-address/your-context-root/services/YourServiceName?wsdl`。 6. *...
总结,本实例通过修正错误并详细解释了如何使用Axis在Java环境下开发一个简单的"Hello World" WebService。这个过程涵盖了从创建服务接口、生成Stub/Skeleton类、部署服务到编写客户端调用的完整流程。了解并掌握...
【基于Axis的Web服务示例】讲解了如何使用Apache Axis2框架开发和发布Web服务,以及如何用Java实现客户端调用。Axis2是SOAP 1.1和1.2的支持者,同时也支持RESTful Web服务和Spring、JSON等技术。在本教程中,我们将...
3. **部署Web服务**:将Java类打包成一个JAR文件,然后将该文件放入Tomcat的`WEB-INF/lib`目录下。接着,通过Axis提供的管理界面或者命令行工具,如`wsdl2java`,生成服务的客户端代理和部署文件。部署文件(如`...
《Axis2 WebService 开发指南》 Axis2是一款强大的Web服务框架,它是Apache Axis1的升级版,提供了更高效、更灵活的服务实现和部署机制。本指南将详细讲解如何使用Axis2进行Web服务的开发,从基础准备到高级特性,...