Jboss3.0.7_tomcat_4.1.24的axis配置

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

Jboss3.0.7_tomcat_4.1.24的axis配置

author:帅牛士email:trynews@163.com

一.把C:\jboss-3.0.7_jakarta-tomcat-4.1.24\server\all\deploy目录里的jboss-net.sar文件解压,把里面的文件解到jboss-net.sar目录里,然后把jboss-net.sar文件备份到其它目录,如c:\根目录下,并把C:\jboss-3.0.7_jakarta-tomcat-4.1.24\server\all\deploy\jobss-net.sar文件删除

二.启动jboss(run –c all),在ie地址栏里输入http://localhost:port/axis/*/services ,可以看到以下的文字,说明配置成功

axis/*/services

Hi there, this is an AXIS service!

Perhaps there will be a form for invoking the service here...

三.建wsr文件

例子:写一个testHelloWorld.java文件,编译成class

内容:public class testHelloWorld

{

public HelloWorld() {

}

public String getHelloWorldMessage(String name){

return "Hello world to " + name;

}

}

在testHelloWorld文件的目录里建一个META-INF目录,META-INF里建一个web-service.xml文件,

内容:<!-- Example Web Service Descriptor -->

<deployment

xmlns="http://xml.apache.org/axis/wsdd/"

xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"

xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

<service name="testHelloWorld" provider="java:RPC">

<parameter name="className" value="testHelloWorld"/>

<parameter name="allowedMethods" value=" getHelloWorldMessage"/>

</service>

</deployment>

到testHelloWorld文件目录里使用jar命令打包:jar cvf testHelloWorld.wsr ,把testHelloWorld.wsr 拷贝到C:\jboss-3.0.7_jakarta-tomcat-4.1.24\server\all\deploy\目录里。

四.写个客户端class调用(当然php,asp也可以调用),内容:

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.encoding.XMLType;

import javax.xml.rpc.ParameterMode;

public class testClient1

{

public static void main(String [] args) {

try {

String endpoint =

"http://192.168.0.28:8080/axis/*/services/testHelloWorld";

String methodName = "getHelloWorldMessage";

Service service = new Service();

Call call = (Call) service.createCall();

call.setTargetEndpointAddress( new java.net.URL(endpoint) );

call.setOperationName(methodName);

// Call to addParameter/setReturnType as described in user-guide.html

call.addParameter("name",

org.apache.axis.Constants.XSD_STRING,

ParameterMode.PARAM_MODE_IN);

call.setReturnType(org.apache.axis.Constants.XSD_STRING);

String ret = (String) call.invoke( new Object[] { "AXIS!" } );

System.out.println(ret);

} catch (Exception e) {

System.err.println(e.toString());

e.printStackTrace();

}

}

}

执行此class,如打印出 Hello world to AXIS!就ok了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航