`

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+Apache集群安装指南.pdf

    本文为您讲述了如何在 Windows 或 Linux 下进行 Tomcat 集群的安装配置。 Windows 下 Tomcat 集群的安装配置与 Linux 下稍有区别,道长为了在一篇教程中讲解两 种操作系统的配置,因此使用两台机器进行安装工作,一...

    开发工具 apache-tomcat-8.0.41-windows-x86

    开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-windows-x86开发工具 apache-tomcat-8.0.41-...

    apache-tomcat-9.0.41.zip

    Apache和Tomcat都可以做为独立的web服务器来运行,但是Apache不能解释java程序。我后面Javaweb程序设计文章里面在eclipse上会用到apache-tomcat-9.0.41这个服务器。 两者都是一种容器,只不过发布的东西不同:...

    apache-tomcat-7.0.75.zip

    Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和...

    Apache+SOAP介绍

    Apache+SOAP介绍

    apache-tomcat-8.5.28

    apache-tomcat-8.5.28 apache-tomcat-8.5.28 apache-tomcat-8.5.28

    apache-tomcat-7.0.53

    apache-tomcat-7.0.53apache-tomcat-7.0.53apache-tomcat-7.0.53apache-tomcat-7.0.53

    Apache2.4+Tomcat8.0集群安装--测试项目

    Apache2.4+Tomcat8.0集群安装--测试项目。集群配置地址为:

    Tomcat及其插件apache-tomcat-5.5.26-admin.zip的安装

    解压Administration Web Application,假设目录为F:\ apache-tomcat-5.5.25 把F:\ apache-tomcat-5.5.25 \server\webapps下面的admin文件夹copy到D:\apache-tomcat-5.5.25\server\webapps下面; 把F:\ apache-...

    apache web整合Tomcat工具Linux版

    这是Linux版本的用于整合tomcat与apache服务器的整合工具

    配置安装Apache+Apache Tomcat实现tomcat负载均衡教程.doc

    配置安装Apache+Apache Tomcat实现tomcat负载均衡教程.doc

    apache web整合Tomcat工具

    此版本是window系统下的用与整合apache与tomcat服务器的工具

    WSDD + TOMCAT 一键部署Webservices

    WSDD + TOMCAT 一键部署Webservices 配置工作: 1、将/wsdd/attachment下的axis.rar解压到tomcat的webapps文件夹下 2、配置/wsdd下的config.properties, #tomcat的路径 tomcat.path=e:/apache-tomcat-7.0.23 #...

    Apache Axis2 Web Services, 2nd

    Extensive and detailed coverage of the enterprise ready Apache Axis2 Web Services / SOAP / WSDL engine. Attain a more flexible and extensible framework with the world class Axis2 architecture. Learn ...

    TomCat与Apache整合

    TomCat Apache 整合TomCat Apache 整合TomCat Apache 整合TomCat Apache 整合TomCat Apache 整合TomCat Apache 整合

    apache-tomcat安装

    apache-tomcat安装文档

    apache-tomcat-8.5.78-windows-x64.zipjava web 工具 Tomcat

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat ...

    apache-tomcat-7.0.85和apache-tomcat-8.0.53解压包和安装文件步骤

    apache-tomcat-7.0.85和apache-tomcat-8.0.53解压包和安装文件步骤

    apache-tomcat-10.0.8.zip

    Apache Tomcat 软件是Jakarta Servlet、 Jakarta Server Pages、 Jakarta Expression Language、 Jakarta WebSocket、 Jakarta Annotations和 Jakarta Authentication 规范的开源实现 。 压缩包内容: apache-...

    Apache Axis2 Web Services的电子书

    包括3本Axis2的书(英文),實為2本(第1本有...1.Developing Web Services with Apache CXF and Axis2, 3rd Edition 2.Packt.Publishing.Quickstart.Apache.Axis2 3.Develop Web Services With Apache Axis2 PDF格式

Global site tag (gtag.js) - Google Analytics