Webservice-使用Tomcat的SOAP的应用
Web Services 可以将应用程序转换为网络应用程序。 通过使用 Web Services,您的应用程序可以向全世界发布信息,或提供某项功能。 Web Services 可以被其他应用程序使用。 通过 Web Services,您的会计部门的 Win 2k 服务器可以与 IT 供应商的 UXIX 服务器相连接。 基本的 Web Services 平台是 XML+HTTP。 Web services 使用 XML 来编解码数据,并使用 SOAP 来传输数据。 参考文献及推荐阅读: http://dev.rdxx.com/Java/WebService/2005-07/27/102648552.shtml http://www.onjava.com/pub/a/onjava/2002/02/27/tomcat.html?page=1 1 下载SOAP http://apache.mirror.phpchina.com/ws/axis/1_4/axis-bin-1_4.zip
?
2 xerces http://xml.apache.org/dist/xerces-j/Xerces-J-bin.2.9.1.zip
?
3 JavaMail http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/javamail-1_4_1.zip?BundledLineItemUUID=9p5IBe.pm1wAAAEZgx8LhFpM&OrderID=G6xIBe.pZPgAAAEZdh8LhFpM&ProductID=3v_ACUFBMTsAAAEYxBQ5AXuF&FileName=/javamail-1_4_1.zip
?
4 JSF(JavaBean Activation Framework) http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jaf-1_1_1.zip?BundledLineItemUUID=d.JIBe.mX1cAAAEZvmRIclpM&OrderID=dDBIBe.mM7MAAAEZsWRIclpM&ProductID=zFnACUFBlVoAAAEYhxc5AXt.&FileName=/jaf-1_1_1.zip
?
http://127.0.0.1:8080/soap/servlet/rpcrouter 出现如下页面: SOAP RPC RouterSorry,I don't speak via HTTP GET- you have to use HTTP POST to talk to me.
?复制相关的*.jar进入Tomcat
D:/Tomcat/common/lib/mail.jar; D:/Tomcat/common/lib/xml-apis.jar; D:/Tomcat/common/lib/activation.jar; D:/Tomcat/common/lib/xercesImpl.jar 1 创建HelloWorldService.java package ?onjava; public ? class ?HelloWorldService { ????public?String?getMessage() ????{ ????????return?"Hello?World!; ????} } 2 HelloWorldClient.java import
?java.io.
*
;
?java.util. ?java.net. ?org.apache.soap. ?org.apache.soap.rpc. ; ?HelloWorldClient? { ?? ??static?String?DEFAULT_ENDPOINT?=http://localhost:8080/soap/servlet/rpcrouter; ??void?main(String?args[])?throws?Exception?{ ????String?endPoint??DEFAULT_ENDPOINT; ????//Process?Arguments ????if?(args.length?==1) ??????endPoint??args[0]; ????else>) ??????System.out.println(java?HelloWorldClient?[endpoint]); ???????Build?the?SOAP?RPC?request?message?using?the?Call?object??????Call?call?new?Call(); ??????call.setTargetObjectURI(urn:onjavaserver); ??????call.setMethodName(getMessage); ??????call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC); ???????Create?a?URL?object,?which?represents?the?endpoint??????URL?url??URL(endPoint); ???????Send?the?SOAP?RPC?request?message?using?invoke()?method??????Response?resp??call.invoke(url,?""?Check?the?response. ???????(resp.generatedFault())?{??Error?Occured????????Fault?fault??resp.getFault(); ????????System.out.println(The?Following?Error?Occured:?); ????????System.out.println(??Fault?Code???=?+?fault.getFaultCode());?? ????????System.out.println(??Fault?String?=??fault.getFaultString()); ??????}??Completed?Successfully????????Parameter?result??resp.getReturnValue(); ????????System.out.println(result.getValue()); ??????} ??} } 3 Tomcat下的配置: Deployed Service Information
运行: java HelloWorldClient Hello World! 注:D:/Tomcat/webapps/soap/WEB-INF/classes/onjava目录下存放HelloWorldService.class (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |