Axis1.4实例说明——服务端、客户端
发布时间:2020-12-17 00:16:33 所属栏目:安全 来源:网络整理
导读:一、服务端 1、下载axis1.4的jar包? 2、创建WebProject 3、将下载的axis1.4下的所有jar导入到项目中 4、修改web.xml文件,这个跟servlet有很多相似的地方,对比着看就行了 ? xml ? version = "1.0" ? encoding =? "UTF-8" ? web-app ? "3.0" ?????? ? xmlns
一、服务端
1、下载axis1.4的jar包?
2、创建WebProject
3、将下载的axis1.4下的所有jar导入到项目中
4、修改web.xml文件,这个跟servlet有很多相似的地方,对比着看就行了
<?xml?version="1.0"?encoding=?"UTF-8"?>
<web-app?"3.0"
???????xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
??????http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"?>
??display-name?></display-name>??????
??welcome-file-list?>
????welcome-file?>index.jsp</?welcome-file</servlet?>
?????????????>
?????????????Apache-Axis?Servlet?servlet-name>?AxisServletservlet-name?servlet-class>
????????????org.apache.axis.transport.http.AxisServlet?>
???????servlet>
????????????Axis?Admin?Servlet?>?AdminServlet>
????????????org.apache.axis.transport.http.AdminServlet?load-on-startup>?100load-on-startup?servlet-mappingurl-pattern>?/servlet/AxisServlet?>?*.jwsurl-pattern?>?/services/*>?/servlet/AdminServlet?>
web-app>
5、在src下新建包server并在包下新建类SayHello
package?server;
public?class?SayHello {
???????public?String getName(String name)
????????? {
??????????????return?"hello "?+name;
????????? }
}
6、右键选择项目=》Run As=》Run Configurations...
在左上角选择新建,填写Name,在Main选项卡里会有项目名,Main class里填写org.apache.axis.wsdl.Java2WSDL(Search里也有)
在Arguments选项卡里面,Program arguments里写入
-d -l"http://127.0.0.1:8885/Axis1.4_Service_003/services/SayHello" -o "sayHello.wsdl" server.SayHello
说明一下
-d 这个选项是要生成 deploy.wsdd 和 undeploy.wsdd
-l 这个选项是要生成webService将来要访问的地址,我做了个假设:http://127.0.0.1:8885/Axis1.4_Service_003/services/SayHello -o 这个选项是要生成wsdl文件,我假设了一个文件名:sayHello.wsdl server.SayHello?这个就是我们要发布的类,可以更换成你的发布类
Run一下,再刷新你的项目,可以看到多出了server文件夹和sayHello.wsdl文件(一定记着刷新,我测试好几次没成功,最后才发现是没刷新项目)
到此为止,就完成wsdl和deploy.wsdd等文件的自生成
7、下面就要创建server-config.wsdd了,先将系统部署到tomcat里,启动tomcat,把deploy.wsdd文件放到根目录下,这一点我试了很多次,不拿出来,后面操作可能会有问题
8、然后跟上面步骤6一样,右键选择项目,Run As啊啥的,就不一一说了,重点是这次要在Main class里填写org.apache.axis.client.AdminClient
在Arguments选项卡里面,Program arguments里写入
-lhttp://127.0.0.1:8885/Axis1.4_Service_003/services/SayHello deploy.wsdd
再一次Run一下,到tomcat的webapps=》Axis1.4_Service_003=》WEB-INF里看看吧,多了一个server-config.wsdd
你可以将server-config.wsdd拷到你项目的根目录下,重新部署tomcat,再一次启动,在浏览器地址栏里面输入http://localhost:8885/Axis1.4_Service_003/services,其中SayHello就是咱们的webservice了
二、Axis客户端
再试试生成客户端吧,客户端就比那个服务端简单多了
1、新建web Project项目Axis1.4_Client_003(和前面服务端一样的手法)?
2、将axis1.4的所有jar导入(也和上面一样)
3、在你的服务端启动的前提下,右键项目,Run As(还是和上面操作一样)
4、这次要在Main class里填写org.apache.axis.wsdl.WSDL2Java(服务器是写的java2wsdl,别混了)
?
在Arguments选项卡里面,Program arguments里写入
-u? http://localhost:8885/Axis1.4_Service_003/services/SayHello?wsdl? -o?e:/WS003/source
现在,你的E盘下多了WS003文件夹,文件夹里source有了server文件夹
5、将server文件夹整个拷到项目的src文件夹下
6、写个测试吧,导入junit的jar
新建类TestWSClient?
package test;
import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; import server.SayHello; import server.SayHelloService; import server.SayHelloServiceLocator; public class TestWSClient extends TestCase { ??? public TestWSClient(String string) { ??????? super(string); ??? } ??? public void SayHelloClient() throws Exception { ??????? SayHelloService service = new SayHelloServiceLocator(); ??????? SayHello client = service.getSayHello() ; ??????? String retValue = client.getName("clientname"); ??????? System.out.println(retValue); ??? } ??? public static Test suite() { ??????? TestSuite suite = new TestSuite(); ??????? suite.addTest(new TestWSClient("SayHelloClient")); ??????? return suite; ??? } }
运行一下,green bar通过!控制台输出hello clientname
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |