Tomcat+ApacheSOAP部署访问COM对象的WebService

原创 2002年09月12日 09:20:00

如果大家用过微软的SoapToolBox的话,一定会知道部署一个访问COM对象的WebService是非常简单事情。而在java环境下,要完成这件事情也不是很复杂。以下是我通过WebService访问一个简单COM对象,只包含一个简单的SayHello方法返回字符串。

我的环境是tomcat4.0+apachesoap,其中tomcat在http://jakarta.apache.org/site/binindex.html
下载,apachesoap在http://xml.apache.org/dist/soap/下载。
步骤:
1。把soap.jar包含到classpath
2。把COMProvider.dll所在路径设置到Path
3。VB写一个COM对象代码如下
‘WebDll.SimpleMath
Public Function SayHello() As String
SayHello = "Hello From Com Object"
End Function
编译生成WebDll.dll
4。写一个部署描述文件WebDll.xml
<!--Apache SOAP specific deployment descriptor (ie loads this service into Apache SOAP.-->
<isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
id="urn:WebDll-COM">
<isd:provider type="org.apache.soap.providers.com.RPCProvider"
scope="Application"
methods="SayHello">
<isd:java class="required not needed for COMProvider"/>
<isd:option key="progid" value="WebDll.SimpleMath" />
</isd:provider>
<isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener>
</isd:service>

5。部署
java org.apache.soap.server.ServiceManagerClient http://localhost:8080/soap/servlet/rpcrouter deploy WebDll.xml

6。客户端程序
import java.io.*;
import java.net.*;
import java.util.*;

import org.apache.soap.*;
import org.apache.soap.rpc.*;

public class JClient
{
public static void main( String[] args) throws Exception
{

Integer n1=null;
Integer n2=null;
final String urn= "urn:WebDll-COM";


Vector params = new Vector ();

URL url = new URL ("http://" + serverhost + ":" + serverport+ soapservlet);

// Build the call.
Call call = new Call ();
call.setTargetObjectURI (urn);
call.setMethodName ("SayHello");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

call.setParams (params);
Response resp = call.invoke (/* router URL */ url, /* actionURI */ "" );

if (resp.generatedFault ()) {
Fault fault = resp.getFault ();
System.out.println ("Ouch, the call failed: ");
System.out.println (" Fault Code = " + fault.getFaultCode ());
System.out.println (" Fault String = " + fault.getFaultString ());
} else {
Parameter result = resp.getReturnValue ();
System.out.println(result.getValue());
}
}
static String serverhost= "localhost";
static String serverport= "8080";
static String soapservlet= "/soap/servlet/rpcrouter";

} // end addit
7。测试运行
编译JClient启动Tomcat
运行java JClient
返回结果
Hello From Com Object

文中不妥处请指教,zlyperson@163.net

tomcat8 部署到Linux系统中,webService服务无法使用

项目在tomcat7中linux环境和Windows环境都没有问题,但是领导要求部署用tomcat8,在本地Windows环境开发和部署,都没有问题,但是部署到服务器中,调用webService总是报...
  • erdongritian
  • erdongritian
  • 2015年09月09日 09:53
  • 1968

Java jdk方式开发webservice并利用Servlet部署到服务器

本文所写内容均经过测试,可以正确运行,注意jdk版本要高于1.6。    1.首先在Eclipse或MyEclipse中,建立web project,在src文件夹下面新建一个java类和一个Serv...
  • adgjlxxx
  • adgjlxxx
  • 2015年11月26日 11:01
  • 1914

webService学习(三)—— 部署webService到tomcat上

webService学习(三)—— 部署webService到tomcat上 本文阅读前提: 1、能够部署本地的webService 2、能够编写客户端调用webService。(可以参考文章:htt...
  • wild46cat
  • wild46cat
  • 2017年01月16日 17:16
  • 6807

Silverlight访问Apache服务器(Tomcat,Geronimo)中部署的Webservice 的两种技巧

这是我在网上找来的两篇Silverlight访问Apache服务器Webservice的文章 技巧一.开发环境  Vs2010 、 Silverlight4 、 Java Jdk1.6 U 21 、 ...
  • whybiang
  • whybiang
  • 2011年06月01日 10:15
  • 1052

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

  • 2016年12月28日 15:38
  • 6.41MB
  • 下载

webService部署tomcat需要的jax-ws jar包

  • 2017年06月15日 11:13
  • 5.15MB
  • 下载

tomcat中三种部署项目的方法 http://leowzy.iteye.com/blog/482044

tomcat中三种部署项目的方法在tomcat中三种部署项目的方法第一种方法:在tomcat中的conf目录中,在server.xml中的,节点中添加: 至于Context 节点属性,可详细见相关文档...
  • liuzheng2684
  • liuzheng2684
  • 2011年05月19日 11:19
  • 395

Webservice_24_SOAP的基于契约优先开发用户管理_部署到Tomcat

非常感谢孙浩老师。 先把之前的META-INF中的文件拷贝到WebRoot的WEB-INF中,还要修改UserServiceImpl中wsdlLocation = "WEB-INF/wsdl/use...
  • u011285379
  • u011285379
  • 2013年08月05日 20:56
  • 622

JAX-WS构建简单webservice部署到tomcat上

前言: 虽然构建本地的jax-ws的webservice很简单,但要部署到tomcat上要绕过点弯。 tomcat本身和jdk都没有jaw-ws的API,所以部署的时候需要额外做点事情,有...
  • pwh309315228
  • pwh309315228
  • 2016年11月09日 11:14
  • 181

JAX-WS 构建简单webservice部署到tomcat上

JAX-WS(三)构建简单webservice部署到tomcat上 前言: 虽然构建本地的jax-ws的webservice很简单,但要部署到tomcat上要绕过点弯。 tomcat本身和jdk...
  • u010395804
  • u010395804
  • 2014年07月14日 18:47
  • 2275
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tomcat+ApacheSOAP部署访问COM对象的WebService
举报原因:
原因补充:

(最多只允许输入30个字)