`

Apache SOAP的Web Services在Tomcat上的初体验:安装和测试

阅读更多

原来发贴在CJSDN,后转载到Matrix,还是自己收集到Blog里来,由于SOAP停止开,接下来准备写个AXIS的开发。

http://www.cjsdn.net/post/view?bid=5&id=133408&sty=2

http://www.matrix.org.cn/thread.shtml?topicId=16780&forumId=13

Apache SOAP的Web Services在Tomcat上的初体验:安装和测试

下载:
Apache SOAP  http://xml.apache.org/soap/index.html
Tomcat    http://jakarta.apache.org/

1、解压Apache SOAP到%ApacheSOAP%,如:F:\OpenSource\SOAP

2、安装Tomcat到%Tomcat%,如:F:\Program Files\Apache Group\Tomcat

3、复制%ApacheSOAP%\webapps\soap.war文件到%Tomcat%\webapps目录下

4、启动Tomcat,此时Tomcat自动将soap.war解压了

5、在%Tomcat%\webapps\soap\WEB-INF\classes建立测试文件HelloSOAPClient.java、HelloSOAP.java,源码附后

6、编译,进入%Tomcat%\webapps\soap\WEB-INF\classes目录
  javac -classpath .;%classpath%;F:\OpenSource\SOAP\lib\soap.jar *.java

7、SOAP服务的发布
  使用IE浏览器浏览http://localhost:8080/soap/admin/index.html,进入Deploy,填写如下信息:
  ID: urn:hello.hellosoap
  Scope: Request
  Methods getWelcomeValue
  Provider Type: Java
  Java Provider Provider Class: HelloSOAP
  Java Provider Static: NO
  确认发布,可以点List查看已发布服务
Service Listing
Here are the deployed services (select one to see details)

urn:hello.hellosoap

8、运行,java -classpath .;%classpath%;F:\OpenSource\SOAP\lib\soap.jar HelloSOAPClient
  可以看到返回值信息如下:
SOAP调用测试开始。。。
Name:俞黎敏
Result:欢迎光临SOAP:俞黎敏
SOAP调用测试结束。。。

则证明配置和测试成功,以后就可以发布自己的SOAP服务了!

9、删除服务Un-deploy之即可
Un-Deploy a Service
Select the service to be undeployed:

urn:hello.hellosoap

public class HelloSOAP
{
public String getWelcomeValue(String name)
{
String strResult = "欢迎光临SOAP:" + name;
return strResult;
}
}

import java.net.URL;
import java.util.Vector;

import org.apache.soap.Constants;
import org.apache.soap.Fault;
import org.apache.soap.rpc.Call;
import org.apache.soap.rpc.Parameter;
import org.apache.soap.rpc.Response;

public class HelloSOAPClient
{
public static void main(String[] args) throws Exception
{
System.out.println("SOAP调用测试开始。。。");
String name = "俞黎敏";
HelloSOAPClient helloSOAPClient = new HelloSOAPClient();
//调用远程的SOAP服务
String resultValue = helloSOAPClient.doSOAPRequest("hello.hellosoap","getWelcomeValue","name",name);
System.out.println("Name:" + name);
System.out.println("Result:" + resultValue);
System.out.println("SOAP调用测试结束。。。");
}

public String doSOAPRequest(String _strURI,String _strMethodName,String _strName,String _strValue) throws Exception
{
//创建一个远程调用
Call call = new Call();
//设置远程对象的URI
call.setTargetObjectURI("urn:" + _strURI);
//设置调用的方法名
call.setMethodName(_strMethodName);
//设置编码风格
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
//设置方法调用的参数
Vector params = new Vector();
params.addElement(new Parameter(_strName,String.class,_strValue,null));
call.setParams(params);
//发送RPC请求,请查看webapps\soap\web.xm,就知道rpcrouter是映射到org.apache.soap.server.http.RPCRouterServlet这个类
Response resp = call.invoke(new URL("http://localhost:8080/soap/servlet/rpcrouter"),"");
if(resp.generatedFault())
{
//远程调用出错处理
Fault fault = resp.getFault();
System.out.println("调用失败!");
System.out.println("错误代号:" + fault.getFaultCode());
System.out.println("错误信息:" + fault.getFaultString());
return "调用失败!";
}
else
{
//调用成功,获取返回值
Parameter result = resp.getReturnValue();
return result.getValue().toString();
}
}
}

分享到:
评论

相关推荐

    tomcat部署webservice程序

    “3:部署webservice的说明文档”可能是指导用户如何在Tomcat上安装和配置Web Service的步骤文档,包括设置环境变量、修改服务器配置文件(如server.xml)、创建和注册服务等。 接下来,我们深入探讨一下部署过程:...

    Java Tutorial: Creating Web Services

    本文介绍了 Web 服务的基本概念和技术,包括 Web 服务的历史背景、多层架构的优势、SOAP 协议的工作原理、WSDL 的结构和用途、示例 Web 服务的开发流程,以及如何使用 Apache CXF 和不同类型的服务器部署 Web 服务。...

    webservices调用方法

    1. **Web Services**:Web Services是一种通过网络进行通信的软件,允许不同系统间的互操作性。它们使用标准的XML(可扩展标记语言)进行数据交换,并依赖于SOAP(简单对象访问协议)来传输数据。 2. **TOMCAT**:...

    Web Services资料大全

    在本文中,我们将深入探讨Web服务的核心技术,包括Axis、CXF和SOAP,以及如何使用Eclipse和Axis2来开发Web服务。 1. Web Services: Web服务是一种通过HTTP协议进行通信的API,它可以跨越不同的操作系统、编程语言...

    webservice例子(客户端和服务器端和tomcat部署)

    这个压缩包提供了一个完整的Web服务示例,包括客户端和服务端的实现以及在Tomcat服务器上的部署过程。下面我们将深入探讨相关知识点。 1. **JAX-WS**: Java API for XML Web Services (JAX-WS) 是Java平台上的标准...

    WebserviceSoap实例(tomcat发布)

    本实例“WebServiceSoap实例(tomcat发布)”将教你如何在Apache Tomcat服务器上部署和使用一个基于SOAP的Web服务。Apache Tomcat是一个流行的开源Java Servlet容器,它能够运行Java Web应用程序,包括JSP和Servlet...

    webservices示例代码

    SOAP是一种轻量级的、基于XML的消息协议,用于在网络上交换结构化和类型化的信息。在Web服务中,SOAP消息通常封装在HTTP请求中,使得它们可以通过Internet传输。SOAP消息由三部分组成:Header(头部)、Body(主体)...

    soap+axis+tomcat

    SOAP是一种用于在Web上传输结构化信息的协议,通常与Web服务结合使用。Tomcat则是一个流行的Java Servlet容器,常用来部署Java Web应用程序。 搭建基于SOAP的Web服务,你需要将Apache Axis集成到Tomcat服务器中。...

    Apache Web Services Axis2(1.4.1) 详细经典入门实例图文并茂

    6. 运行和测试服务:在Eclipse内置的Tomcat或其他Web容器中运行服务,通过测试客户端进行调用验证。 四、Axis2关键特性 1. 模块化:Axis2的模块化设计允许开发者按需加载功能,提高性能。 2. 多协议支持:除了SOAP...

    Develop Web Services With Apache Axis

    3. **如何使用WSS4J加密和签名SOAP消息**:WSS4J(Web Services Security for Java)是Apache的一个子项目,专门用于提供Web服务的安全功能。本书详细讲解了如何利用WSS4J来实现SOAP消息的加密和签名,从而保障数据...

    Tomcat_与_Apache_AXIS集成.pdf

    本文档主要介绍如何在Tomcat服务器上集成并部署Apache AXIS Web应用。Apache AXIS是一个用于构建和调用Web服务的工具包,它支持SOAP协议,使得不同平台之间的应用程序可以通过HTTP协议进行通信。本文将详细介绍所需...

    Apache CXF部署WebServices实例代码

    Web服务是一种通过互联网交换数据的方式,遵循统一的协议和标准,如SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language)。Apache CXF作为一个优秀的Web服务框架,允许开发者使用Java...

    Java Web Services教程

    2. **SOAP(Simple Object Access Protocol)**:SOAP是一种基于XML的消息传递协议,用于在Web上交换结构化信息。在Java中,JAX-WS(Java API for XML Web Services)是用于创建SOAP Web服务的主要框架。 3. **WSDL...

    应用Axis开发Web Services

    通过安装必要的软件(JDK、Axis、Tomcat)、配置环境变量、测试安装以及使用即时发布功能发布Web服务,可以有效地利用Axis来构建和部署基于SOAP协议的Web服务。对于开发者来说,掌握这些知识点能够帮助他们在实际...

    sakai webservices 使用方式

    Apache Axis 1是一个用于创建和调用Webservices的工具包,它提供了强大的功能来支持SOAP协议,使得不同应用之间能够进行高效的数据交换。 - **JWS 文件**: Sakai的Webservices主要通过JWS (Java Web Services) 文件...

    Eclipse3.2+MyEclipse5.5M1+axis2_1.1.1+tomcat5.5 开发Web Services.doc

    总结来说,这个文档提供了一个完整的流程,指导开发者在特定环境下,如何使用Eclipse和MyEclipse这样的开发工具,结合Axis2和Tomcat来创建、部署和测试Web服务。整个过程涉及了从环境配置、项目创建、WSDL设计、代码...

    web services

    Axis 是 Apache 组织提供的一款开源 Web Services 实现框架,它支持 SOAP 协议,能够帮助开发者快速构建 Web Services。安装和配置 Axis 的步骤如下: - **下载 Axis**:从 Apache 官方网站下载 Axis 的最新版本。 ...

    cxf 开发web services apache 官方文档

    - CXF 可以运行在任何支持 Servlet 规范的容器上,如 WebSphere、WebLogic、Tomcat 和 Jetty 等。 - 不同的 Servlet 容器可能需要不同的配置,但在大多数情况下,只需要简单的部署即可。 ### 三、CXF 应用实例 #...

    web services开发文档

    “用axis2+Tomcat5.5+Eclipse3.2部署和访问Web服务(zhouhuayun).doc”将详细阐述如何在Eclipse中配置Axis2和Tomcat,以及如何部署和测试Web Services。此文档会指导开发者完成从创建服务接口到发布服务,再到使用...

Global site tag (gtag.js) - Google Analytics