[转载]Web Services在Tomcat4.0.4的安装和测试

Web Services在Tomcat4.0.4的安装和测试
相关下载:

Apache SOAP:

http://xml.apache.org/soap/index.html

Tomcat4.0.4:

http://jakarta.apache.org/builds /jakarta-tomcat-4.0/release/v4.0.4/

1、安装Apache SOAP到C盘根目录,即C:soap-2_3_1

2、安装Tomcat4.0.4到C:Program FilesApache Tomcat 4.0

3、复制C:soap-2_3_1webappssoap.war文件到C:Program Files Apache Tomcat 4.0webapps目录下

4、建立测试目录C:soaptest和C:soaptestclasses

5、修改系统环境变量CLASSPATH,加入C:soaptestclasses est.jar

6、启动Tomca4.0.4,方法有两个:A.执行C:Program FilesApache Tomcat 4、0instartup.ba;B.通过系统管理的服务管理开启Apache Tomcat4.0.4

7、建立测试java源文件,源文件应放置在目录C:soaptest下:

//SimpleMath.java 
package test; 
public class SimpleMath 
{ 
 public double getSinValue(double input) 
 { 
  double ret = Math.sin(input); 
  return ret; 
 } 
} 

---第二个JAVA源文件----------------


//SimpleMathClient.java 
package test; 
import java.io.*; 
import java.net.*; 
import java.util.*; 
import org.apache.soap.util.xml.*; 
import org.apache.soap.*; 
import org.apache.soap.rpc.*; 
public class SimpleMathClient 
{ 
public static void main(String[]
args) throws Exception 
{ 
  System.err.println("SOAP call testing"); 
  double value = Math.random(); 
  SimpleMathClient smc = new SimpleMathClient(); 
  //调用远程的SOAP服务 
  double returnValue = smc.doRequest(value); 
  System.err.println("the sin value of 
  "+value +"is: "+returnValue); 
 } 
 public double doRequest(double value)
 throws Exception { 
  // Build the call. 
  Call call = new Call (); 
  //设置远程对象的URI 
  call.setTargetObjectURI 
  ("urn:test.math.sin"); 
  //设置调用的方法名 
  call.setMethodName ("getSinValue"); 
  //设置编码风格 
  call.setEncodingStyleURI
  (Constants.NS_URI_SOAP_ENC); 
  //设置方法调用的参数 
  Vector params = new Vector (); 
  params.addElement (new Parameter
  ("input", double.class,
  new Double (value), null)); 
  call.setParams (params); 
  //发送RPC请求 
  Response resp = call.invoke 
  (new URL("http://127.0.0.1:8080
  /soap/servlet/rpcrouter"),""); 
  if (resp.generatedFault ())
  { 
  //远程调用出错处理 
   Fault fault = resp.getFault (); 
   System.out.println ("the call failed: "); 
   System.out.println 
   ("  Fault Code   = " + fault.getFaultCode ()); 
   System.out.println 
   ("  Fault String = " + fault.getFaultString ()); 
   return 0.0d; 
  }  
  else
{
  //调用成功,获取返回值 
   Parameter result = resp.getReturnValue (); 
   return ((Double)result.getValue()).doubleValue(); 
  } 
 } 
}


8、编译java源文件,并打包:

a. cd c:soaptest
b. javac -d classes *.java
c. cd classes
d. jar -cvf test.jar test


9、SOAP服务的发布

使用IE浏览器浏览http://localhost:8080/soap/admin/index.html,进入Deploy,

填写如下信息:

ID: urn:test.math.sin
Scope: Request
Methods getSinValue
Provider Type: Java
Java Provider Provider Class: 
test.SimpleMath
Java Provider Static: NO


确认发布,可以点List查看已发布服务。

10、运行测试程序:

a. cd c:soaptest
b. java test.SimpleMathClien


应该可以看到返回的数值,则证明配置和测试成功,以后就可以发布自己的SOAP服务了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131978/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/374079/viewspace-131978/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值