Server:(part)
package service;
import java.util.Arrays;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.context.ServiceContext;
import org.apache.axis2.context.ServiceGroupContext;
import domain.Data;
public class Login {
public String getContainName(String[] names) {
return Arrays.toString(names);
}
public String[] getNames() {
return new String[] { "Hello", "Hi" };
}
public Data getData(Data data, String name) {
data.setDscr("Welcome: " + name);
return data;
}
public void getLogin(String key, String value) {
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
sc.setProperty(key, value);
}
public String getLoginName(String key) {
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
return (String) sc.getProperty(key);
}
public void getLogout(String key, String value) {
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceGroupContext sgc = mc.getServiceGroupContext();
sgc.setProperty(key, value);
}
}
package service;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.context.ServiceGroupContext;
public class LoginService {
public String getLoginName(String key){
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceGroupContext sgc = mc.getServiceGroupContext();
return (String)sgc.getProperty(key);
}
}
Client:(part)
package client;
import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.rpc.client.RPCServiceClient;
public class ServiceClient {
public static void main(String[] args) {
try {
// 使用RPC方式调用WebService
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
// 指定调用WebService的URL
options.setTo(new EndpointReference(" http://127.0.0.1:8080/axis2/services/testContext1"));
options.setManageSession(true);
// 指定要调用的getNames方法及WSDL文件的命名空间
QName opAddEntry = new QName("http://service","getNames");
// 调用getNames方法并输出该方法的返回值
System.out.println(serviceClient.invokeBlocking(opAddEntry, new Object[] {}, new Class[] { String[].class })[0]);
serviceClient.invokeRobust(opAddEntry, new Object[] {});
serviceClient.invokeNonBlocking(opAddEntry, null, new org.apache.axis2.client.async.AxisCallback() {
@Override
public void onComplete() {
}
@Override
public void onError(Exception arg0) {
}
@Override
public void onFault(MessageContext arg0) {
}
@Override
public void onMessage(MessageContext arg0) {
}
});
} catch (AxisFault e) {
e.printStackTrace();
}
}
}
备注: 没有axis2的相关jar包和基本war包。(推荐到官网上下载)
axis2官网: http://axis.apache.org/axis2/java/core/download.cgi
分享到:
相关推荐
本文将深入探讨Axis2 1.4.1版本的经典入门实例,通过Eclipse集成开发环境中的Axis2插件,帮助你快速理解和应用这一强大的Web服务工具。 一、Apache Axis2概述 Apache Axis2是Apache SOAP(Simple Object Access ...
本入门教程将帮助你理解如何使用AXIS2来创建、发布和调用SOAP Web服务。首先,你需要了解AXIS2的架构,它主要由以下几个部分组成: 1. **Service Archive (AAR)**:这是AXIS2中服务的打包格式,类似于Java的JAR文件...
本资料集合包括了“AXIS2入门”、“AXIS2进阶”以及一个具体的“WebService实例”,旨在帮助初学者和有经验的开发者深入理解AXIS2及其在Web服务中的应用。 入门篇可能涵盖了以下内容: 1. **AXIS2基础概念**:介绍...
4. **示例**:压缩包中的实例可能包含创建一个简单的Axis2服务的完整流程,从编写服务接口和实现,到生成WSDL,再到部署服务。这些示例可以帮助理解Axis2的工作原理,同时也展示了如何在MyEclipse中调试和测试Web...
这个简明教程将引导你入门Axis2的使用。 首先,我们创建一个名为`StockQuoteService`的Java类,它包含了获取股票价格(`getPrice`)和更新股票价格(`update`)的方法。这里的`StockQuoteService`是一个简单的POJO...
- `README.txt`:通常提供了简要的安装指南和快速入门步骤,对于初次接触Axis2的人来说非常有价值。 - `NOTICE.txt`:列举了Axis2所使用的第三方库及其许可信息,确保遵循所有相关的版权规定。 总的来说,Axis2的...
【Axis2实用教程入门概述】 Axis2是Apache软件基金会开发的一款强大的WebService引擎,它在WebService技术领域具有广泛的应用。作为一款先进的服务发布和消费平台,Axis2提供了丰富的功能,包括支持SOAP1.1和SOAP...
### Axis2 开发 Web Services 入门 #### 知识点概述 本文旨在介绍如何使用 Axis2 开发 Web Services 的全过程,包括环境搭建、插件安装等基础准备工作,以及具体的开发流程与实例演示。 #### 1. 环境搭建 ##### ...
总的来说,这个压缩包为Java开发者提供了一种快速入门的途径,他们可以通过这个实例学习如何使用Apache Axis来调用Web服务,了解如何配置和使用必要的jar包,以及如何编写代码来与Web服务进行交互。这将有助于开发者...
【描述】中提到的"Tomcat+Axis+WebService 入门实例"旨在帮助初学者掌握如何利用这些组件进行通信。首先,Tomcat是一个流行的、开源的Java Servlet容器,它支持Servlet和JSP规范,是部署Web服务的理想选择。接下来,...
【 Axis2 创建 Web Service 入门教程】 Apache Axis2 是一个功能强大的 Web Service 开发框架,它提供了简单、高效的方法来构建和部署 Web Services。本教程将详细介绍如何使用 Axis2 创建 Web Services,从基础...
WebService入门简单实例(采用AXIS的方式) WebService是一种基于XML的开放标准,用于在不同系统间交换数据和服务。它允许不同的应用程序、操作系统甚至编程语言之间进行互操作,通过HTTP协议进行通信,实现分布式...
### Axis2 WebService 入门手册知识点详解 #### 一、Axis2简介 **1. AXIOM (AXIs Object Model)** - **定义**:AXIOM 是 Axis2 中用于处理 XML 的核心模型。它不同于传统的 DOM 和 SAX 解析方式,提供了更高效、...
Axis的入门实例 Axis复杂对象类型的WebService Axis的辅助工具发布、调用WebService Axis WebService会话Session的管理 Axis用控制台Dos命令发布WebService Axis跨多个WebService管理Session Axis用Spring的JavaBean...
【Axis入门中文文档】是针对Web Service开发的一款关键工具,主要使用了Axis框架,该框架是Apache软件基金会下的一个开源项目,专门用于构建和部署基于SOAP(Simple Object Access Protocol)的Web服务。本文将深入...
2. Axis入门:介绍如何安装和设置Axis环境,以及创建第一个Web服务的步骤。 3. WSDL编写:教授如何手动或使用工具生成WSDL文件,以描述Web服务的接口和绑定。 4. SOAP消息结构:深入解析SOAP消息的构成,包括Header...
总结来说,这个压缩包是一个关于Axis2 1.6.2版本的开发资源集合,包括必要的JAR库和一个演示接口请求的实例,旨在帮助开发者快速入门并掌握使用Axis2创建和消费Web服务的方法。对于任何想要在Java环境中构建Web服务...