首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

转:利用Java编纂简单的WebService实例

2013-07-20 
转:利用Java编写简单的WebService实例/*?*?File?name:?HelloService.java?*??*?Version:?v1.0?*??*?Create

转:利用Java编写简单的WebService实例

转:利用Java编纂简单的WebService实例/*
转:利用Java编纂简单的WebService实例?*?File?name:?HelloService.java
转:利用Java编纂简单的WebService实例?*?
转:利用Java编纂简单的WebService实例?*?Version:?v1.0
转:利用Java编纂简单的WebService实例?*?
转:利用Java编纂简单的WebService实例?*?Created?on?Aug?2,?2008?9:40:20?AM
转:利用Java编纂简单的WebService实例?*?
转:利用Java编纂简单的WebService实例?*?Designed?by?Stephen
转:利用Java编纂简单的WebService实例?*?
转:利用Java编纂简单的WebService实例?*?(c)Copyright?2008
转:利用Java编纂简单的WebService实例?*/
转:利用Java编纂简单的WebService实例package?com.sinosoft.webservice;
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例/**
转:利用Java编纂简单的WebService实例?*?@author?Stephen
转:利用Java编纂简单的WebService实例?*?
转:利用Java编纂简单的WebService实例?*?Test?web?service
转:利用Java编纂简单的WebService实例?*/
转:利用Java编纂简单的WebService实例public?class?HelloService?{
转:利用Java编纂简单的WebService实例????/**
转:利用Java编纂简单的WebService实例?????*?不带参数的函数
转:利用Java编纂简单的WebService实例?????*?
转:利用Java编纂简单的WebService实例?????*?@return?返回Hello字符串
转:利用Java编纂简单的WebService实例?????*/
转:利用Java编纂简单的WebService实例????public?String?sayHello()?{
转:利用Java编纂简单的WebService实例????????return?"Hello";
转:利用Java编纂简单的WebService实例????}
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????/**
转:利用Java编纂简单的WebService实例?????*?带参数的函数
转:利用Java编纂简单的WebService实例?????*?
转:利用Java编纂简单的WebService实例?????*?@param?name
转:利用Java编纂简单的WebService实例?????*????????????名称
转:利用Java编纂简单的WebService实例?????*?@return?返回加上名称的欢迎词
转:利用Java编纂简单的WebService实例?????*/
转:利用Java编纂简单的WebService实例????public?String?sayHelloToPerson(String?name)?{
转:利用Java编纂简单的WebService实例????????if?(name?==?null?||?name.equals(""))?{
转:利用Java编纂简单的WebService实例????????????name?=?"nobody";
转:利用Java编纂简单的WebService实例????????}
转:利用Java编纂简单的WebService实例????????return?"Hello?"?+?name;
转:利用Java编纂简单的WebService实例????}
转:利用Java编纂简单的WebService实例}
转:利用Java编纂简单的WebService实例

发布WebService

????? 要将上边写的HelloService类发布为WebService,需要先搭建Web应用。下面是在Tomcat下使用Axis创建WebService服务的例子。

在Tomcat下创建Web应用

???? 在该例子中,在Tomcat下创建了一个context path为ws的WEB应用。

?????1. 在Tomcat的webapps下创建如下文件系统

??????????ws

???????????????WEB-INF

????????????????????lib

????????????????????classes

?????2. 在WEB-INF文件夹下创建web.xml文件,该文件的内容如下:

?


转:利用Java编纂简单的WebService实例<?xml?version="1.0"?encoding="ISO-8859-1"?>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例<!DOCTYPE?web-app?PUBLIC?"-//Sun?Microsystems,?Inc.//DTD?Web
转:利用Java编纂简单的WebService实例Application?2.3//EN"?"http://java.sun.com/dtd/web-app_2_3.dtd">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例<web-app>
转:利用Java编纂简单的WebService实例??<display-name>Apache-Axis</display-name>
转:利用Java编纂简单的WebService实例????
转:利用Java编纂简单的WebService实例????<listener>
转:利用Java编纂简单的WebService实例????????<listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>
转:利用Java编纂简单的WebService实例????</listener>
转:利用Java编纂简单的WebService实例????
转:利用Java编纂简单的WebService实例??<servlet>
转:利用Java编纂简单的WebService实例????<servlet-name>AxisServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<display-name>Apache-Axis?Servlet</display-name>
转:利用Java编纂简单的WebService实例????<servlet-class>
转:利用Java编纂简单的WebService实例????????org.apache.axis.transport.http.AxisServlet
转:利用Java编纂简单的WebService实例????</servlet-class>
转:利用Java编纂简单的WebService实例??</servlet>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet>
转:利用Java编纂简单的WebService实例????<servlet-name>AdminServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<display-name>Axis?Admin?Servlet</display-name>
转:利用Java编纂简单的WebService实例????<servlet-class>
转:利用Java编纂简单的WebService实例????????org.apache.axis.transport.http.AdminServlet
转:利用Java编纂简单的WebService实例????</servlet-class>
转:利用Java编纂简单的WebService实例????<load-on-startup>100</load-on-startup>
转:利用Java编纂简单的WebService实例??</servlet>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet>
转:利用Java编纂简单的WebService实例????<servlet-name>SOAPMonitorService</servlet-name>
转:利用Java编纂简单的WebService实例????<display-name>SOAPMonitorService</display-name>
转:利用Java编纂简单的WebService实例????<servlet-class>
转:利用Java编纂简单的WebService实例????????org.apache.axis.monitor.SOAPMonitorService
转:利用Java编纂简单的WebService实例????</servlet-class>
转:利用Java编纂简单的WebService实例????<init-param>
转:利用Java编纂简单的WebService实例??????<param-name>SOAPMonitorPort</param-name>
转:利用Java编纂简单的WebService实例??????<param-value>5001</param-value>
转:利用Java编纂简单的WebService实例????</init-param>
转:利用Java编纂简单的WebService实例????<load-on-startup>100</load-on-startup>
转:利用Java编纂简单的WebService实例??</servlet>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet-mapping>
转:利用Java编纂简单的WebService实例????<servlet-name>AxisServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<url-pattern>/servlet/AxisServlet</url-pattern>
转:利用Java编纂简单的WebService实例??</servlet-mapping>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet-mapping>
转:利用Java编纂简单的WebService实例????<servlet-name>AxisServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<url-pattern>*.jws</url-pattern>
转:利用Java编纂简单的WebService实例??</servlet-mapping>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet-mapping>
转:利用Java编纂简单的WebService实例????<servlet-name>AxisServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<url-pattern>/services/*</url-pattern>
转:利用Java编纂简单的WebService实例??</servlet-mapping>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<servlet-mapping>
转:利用Java编纂简单的WebService实例????<servlet-name>SOAPMonitorService</servlet-name>
转:利用Java编纂简单的WebService实例????<url-pattern>/SOAPMonitor</url-pattern>
转:利用Java编纂简单的WebService实例??</servlet-mapping>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?<!--?uncomment?this?if?you?want?the?admin?servlet?-->
转:利用Java编纂简单的WebService实例?<!--
转:利用Java编纂简单的WebService实例??<servlet-mapping>
转:利用Java编纂简单的WebService实例????<servlet-name>AdminServlet</servlet-name>
转:利用Java编纂简单的WebService实例????<url-pattern>/servlet/AdminServlet</url-pattern>
转:利用Java编纂简单的WebService实例??</servlet-mapping>
转:利用Java编纂简单的WebService实例?-->
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????<session-config>
转:利用Java编纂简单的WebService实例????????<!--?Default?to?5?minute?session?timeouts?-->
转:利用Java编纂简单的WebService实例????????<session-timeout>5</session-timeout>
转:利用Java编纂简单的WebService实例????</session-config>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????<!--?currently?the?W3C?havent?settled?on?a?media?type?for?WSDL;
转:利用Java编纂简单的WebService实例????http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft
转:利用Java编纂简单的WebService实例????for?now?we?go?with?the?basic?'it's?XML'?response?-->
转:利用Java编纂简单的WebService实例??<mime-mapping>
转:利用Java编纂简单的WebService实例????<extension>wsdl</extension>
转:利用Java编纂简单的WebService实例?????<mime-type>text/xml</mime-type>
转:利用Java编纂简单的WebService实例??</mime-mapping>
转:利用Java编纂简单的WebService实例??
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<mime-mapping>
转:利用Java编纂简单的WebService实例????<extension>xsd</extension>
转:利用Java编纂简单的WebService实例????<mime-type>text/xml</mime-type>
转:利用Java编纂简单的WebService实例??</mime-mapping>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??<welcome-file-list?id="WelcomeFileList">
转:利用Java编纂简单的WebService实例????<welcome-file>index.jsp</welcome-file>
转:利用Java编纂简单的WebService实例????<welcome-file>index.html</welcome-file>
转:利用Java编纂简单的WebService实例????<welcome-file>index.jws</welcome-file>
转:利用Java编纂简单的WebService实例??</welcome-file-list>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例</web-app>
转:利用Java编纂简单的WebService实例

?

?????在上面的web.xml中主要是配置了axis的相关配置。

axis的相关配置

?????在上述的web.xml文件中已经对axis进行了配置,但是还需要进行额外的配置。

?????复制axis相关的jar文件

?????将axis的相关jar文件复制到WEB-INF\lib文件夹下。这些文件包括:

activation.jar
axis.jar
axis-ant.jar
axis-schema.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
mailapi.jar
saaj.jar
wsdl4j-1.5.1.jar
xmlsec-1.3.0.jar

?????复制WebService服务主文件

?????将HelloService.java编译后的class文件复制到WEB-INF\classes文件夹下,也就是说在WEB-INF\classes文件夹下的文件夹结构为:com\sinosoft\webservice,在webservice文件夹下有一个helloservice.class文件。

测试发布的Web应用

?????启动Tomcat服务,打开IE浏览器,访问地址http:host:port/ws/services,如果看到如下界面就说明AXIS部署成功了。

?

转:利用Java编纂简单的WebService实例

?

发布WebService

?????发布WebService需要使用现有的AdminService来实现,这里我写了一个批处理文件来发布WebService,以后如果需要发布其他文件,只需要修改相应的参数就可以了。

创建deploy.wsdd文件

?????文件deploy.wsdd内容如下所示:

?


转:利用Java编纂简单的WebService实例<?xml?version="1.0"?encoding="UTF-8"?>
转:利用Java编纂简单的WebService实例<deployment?xmlns="http://xml.apache.org/axis/wsdd/"?xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
转:利用Java编纂简单的WebService实例????<service?name="HelloServices"?provider="java:RPC">
转:利用Java编纂简单的WebService实例????????<parameter?name="className"?value="com.sinosoft.webservice.HelloService"/>
转:利用Java编纂简单的WebService实例????????<parameter?name="allowedMethods"?value="*"/>
转:利用Java编纂简单的WebService实例????</service>
转:利用Java编纂简单的WebService实例</deployment>

创建发布WebService服务的批处理文件

?????批处理文件deploywebservice.bat内容如下:

?


java?-cp?E:\Stephen\Lib\axislib\activation.jar;E:\Stephen\Lib\axislib\axis-ant.jar;E:\Stephen\Lib\axislib\axis-schema.jar;E:\Stephen\Lib\axislib\axis.jar;E:\Stephen\Lib\axislib\commons-discovery-0.2.jar;E:\Stephen\Lib\axislib\commons-logging-1.0.4.jar;E:\Stephen\Lib\axislib\jaxrpc.jar;E:\Stephen\Lib\axislib\log4j-1.2.8.jar;E:\Stephen\Lib\axislib\mailapi.jar;E:\Stephen\Lib\axislib\saaj.jar;E:\Stephen\Lib\axislib\wsdl4j-1.5.1.jar;E:\Stephen\Lib\axislib\xmlsec-1.3.0.jar?org.apache.axis.client.AdminClient?-lhttp://localhost:8090/ws/services/AdminService?deploy.wsdd

?????其中E:\Stephen\Lib\axislib是存放axis对应的jar文件的文件夹,现在将所有的jar文件都加入到classpath中进行执行。

?????-l后的参数是本地要发布WebService的AdminService对应的访问地址。

?????最后deploy.wsdd是对应的配置文件名称。

发布WebService服务

?????将deploy.wsdd文件和deploywebservice.bat文件复制到同一个文件夹下,执行deploywebservice.bat批处理文件,就可以将deploy.wsdd中描述的Java类发布为WebService。发布完成之后在访问http://host:port/ws/services如下图所示:

?

转:利用Java编纂简单的WebService实例?

?

从上图可以看出,发布成功后,多了一个HelloServices的服务。这样就说明HelloService发布成功了。

查看HelloServices的wsdl

?????访问http://host:port/ws/services/HelloServices?wsdl可以看到如下wsdl的内容:

?


转:利用Java编纂简单的WebService实例<?xml?version="1.0"?encoding="UTF-8"?>
转:利用Java编纂简单的WebService实例<wsdl:definitions?targetNamespace="http://localhost:8090/ws2/services/HelloServices"?xmlns:apachesoap="http://xml.apache.org/xml-soap"?xmlns:impl="http://localhost:8090/ws2/services/HelloServices"?xmlns:intf="http://localhost:8090/ws2/services/HelloServices"?xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"?xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"?xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"?xmlns:xsd="http://www.w3.org/2001/XMLSchema">
转:利用Java编纂简单的WebService实例<!--WSDL?created?by?Apache?Axis?version:?1.3
转:利用Java编纂简单的WebService实例Built?on?Oct?05,?2005?(05:23:37?EDT)-->
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:message?name="sayHelloResponse">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:part?name="sayHelloReturn"?type="soapenc:string"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:message>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:message?name="sayHelloToPersonResponse">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:part?name="sayHelloToPersonReturn"?type="soapenc:string"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:message>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:message?name="sayHelloToPersonRequest">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:part?name="name"?type="soapenc:string"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:message>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:message?name="sayHelloRequest">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:message>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:portType?name="HelloService">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:operation?name="sayHello">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:input?message="impl:sayHelloRequest"?name="sayHelloRequest"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:output?message="impl:sayHelloResponse"?name="sayHelloResponse"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????</wsdl:operation>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:operation?name="sayHelloToPerson"?parameterOrder="name">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:input?message="impl:sayHelloToPersonRequest"?name="sayHelloToPersonRequest"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:output?message="impl:sayHelloToPersonResponse"?name="sayHelloToPersonResponse"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????</wsdl:operation>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:portType>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:binding?name="HelloServicesSoapBinding"?type="impl:HelloService">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdlsoap:binding?style="rpc"?transport="http://schemas.xmlsoap.org/soap/http"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:operation?name="sayHello">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdlsoap:operation?soapAction=""/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:input?name="sayHelloRequest">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????????????<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://webservice.sinosoft.com"?use="encoded"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????</wsdl:input>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:output?name="sayHelloResponse">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????????????<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://localhost:8090/ws2/services/HelloServices"?use="encoded"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????</wsdl:output>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????</wsdl:operation>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:operation?name="sayHelloToPerson">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdlsoap:operation?soapAction=""/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:input?name="sayHelloToPersonRequest">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????????????<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://webservice.sinosoft.com"?use="encoded"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????</wsdl:input>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdl:output?name="sayHelloToPersonResponse">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例????????????<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://localhost:8090/ws2/services/HelloServices"?use="encoded"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????</wsdl:output>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????</wsdl:operation>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:binding>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???<wsdl:service?name="HelloServiceService">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????<wsdl:port?binding="impl:HelloServicesSoapBinding"?name="HelloServices">
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例?????????<wsdlsoap:address?location="http://localhost:8090/ws2/services/HelloServices"/>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例??????</wsdl:port>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例???</wsdl:service>
转:利用Java编纂简单的WebService实例
转:利用Java编纂简单的WebService实例</wsdl:definitions>
转:利用Java编纂简单的WebService实例

用Java调用WebService实例

?????下面是用Java调用刚发布的WebService例子。

?


/*
?*?File?name:?TestHelloService.java
?*?
?*?Version:?v1.0
?*?
?*?Created?on?Aug?2,?2008?9:54:10?AM
?*?
?*?Designed?by?Stephen
?*?
?*?(c)Copyright?2008
?*/
package?test.com.sinosoft.webservice;

import?java.io.IOException;
import?java.net.MalformedURLException;

import?javax.xml.namespace.QName;
import?javax.xml.rpc.ServiceException;

import?org.apache.axis.client.Call;
import?org.apache.axis.client.Service;
import?org.apache.commons.logging.Log;
import?org.apache.commons.logging.LogFactory;

/**
?*?@author?Stephen
?*?
?*?测试调用WebService
?*/
public?class?TestHelloService?{
????private?static?final?Log?log?=?LogFactory.getLog(TestHelloService.class);
????private?static?final?String?HELLO_SERVICE_ENDPOINT?=?"http://localhost:8090/ws/services/HelloServices?wsdl";

????public?static?void?main(String[]?args)?{
????????TestHelloService?tester?=?new?TestHelloService();
????????//?tester.callSayHello();
????????tester.callSayHelloToPerson();
????}

????public?void?callSayHello()?{
????????try?{
????????????Service?service?=?new?Service();
????????????Call?call?=?(Call)?service.createCall();
????????????call.setTargetEndpointAddress(new?java.net.URL(
????????????????????HELLO_SERVICE_ENDPOINT));
????????????call.setOperationName(new?QName("http://webservice.sinosoft.com/",
????????????????????"sayHello"));
????????????call.setReturnType(org.apache.axis.Constants.XSD_STRING);
????????????try?{
????????????????String?ret?=?(String)?call.invoke(new?Object[]?{});
????????????????System.out.println("The?return?value?is:"?+?ret);
????????????????return;
????????????}?catch?(IOException?e)?{
????????????????e.printStackTrace();
????????????}
????????}?catch?(MalformedURLException?e)?{
????????????e.printStackTrace();
????????}?catch?(ServiceException?e)?{
????????????e.printStackTrace();
????????}
????????log.error("call?sayHello?service?error!");
????}

????public?void?callSayHelloToPerson()?{
????????try?{
????????????Service?service?=?new?Service();
????????????Call?call?=?(Call)?service.createCall();
????????????call.setTargetEndpointAddress(new?java.net.URL(
????????????????????HELLO_SERVICE_ENDPOINT));
????????????call.setOperationName(new?QName("http://webservice.sinosoft.com/",
????????????????????"sayHelloToPerson"));
????????????call.addParameter("name",?org.apache.axis.Constants.XSD_STRING,
????????????????????javax.xml.rpc.ParameterMode.IN);
????????????call.setReturnType(org.apache.axis.Constants.XSD_STRING);
????????????try?{
????????????????String?ret?=?(String)?call.invoke(new?Object[]?{?"Stephen"?});
????????????????System.out.println("The?return?value?is:"?+?ret);
????????????????return;
????????????}?catch?(IOException?e)?{
????????????????e.printStackTrace();
????????????}
????????}?catch?(MalformedURLException?e)?{
????????????e.printStackTrace();
????????}?catch?(ServiceException?e)?{
????????????e.printStackTrace();
????????}
????????log.error("call?sayHello?service?error!");
????}
}
??分类:?WebService标签:?webservice,?java,?axis

热点排行