java调用vb.net java调用https跳过证书( 五 )


?xml version="1.0" encoding="UTF-8"?
web-app xmlns="" xmlns:xsi="" version="2.4" xsi:schemaLocation=" "
display-nameXFireService/display-name
!-- begin Spring配置 --
context-param
param-namecontextConfigLocation/param-name
param-value/WEB-INF/applicationContext.xml,/WEB-INF/xfire-servlet.xml/param-value
/context-param
listener
listener-class org.springframework.web.context.ContextLoaderListener
/listener-class
/listener
listener
listener-class org.springframework.web.util.IntrospectorCleanupListener
/listener-class
/listener
!-- end Spring配置 --
!-- begin XFire 配置 --
servlet
servlet-namexfire/servlet-name
servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class
/servlet
servlet-mapping
servlet-namexfire/servlet-name
url-pattern*.ws/url-pattern
/servlet-mapping
servlet
!-- 配合Spring容器中XFire一起工作的Servlet--
servlet-namexfireServlet/servlet-name
servlet-classorg.codehaus.xfire.spring.XFireSpringServlet/servlet-class
/servlet
servlet-mapping
servlet-namexfireServlet/servlet-name
!-- 在这个URI下开放Web Service服务 --
url-pattern/service/*/url-pattern
/servlet-mapping
!-- end XFire 配置 --
/web-app
2)Web Service的接口类HelloWorld.java和对应实现类HelloWorldImpl.java
为了用Web Service完成HelloWorld功能,我们首先在src/webservice目录下建立接口类HelloWold.java 。它仅包含一个sayHelloWorld(String name)的方法,其详细内容如下:
package webservice;
/** *//**
*HelloWorld的接口类.
*/
publicinterface HelloWorld {
/** *//**
*对名字为name的人打招呼.
*@paramname名字
*@return返回打招呼的字符串
*/
String sayHelloWorld(String name);
}
我们还需要建立一个对应的实现类,来实现sayHelloWorld的功能,该实现类即为HelloWorldImpl.java 。该类的详细内容如下:
package webservice;
/** *//**
*HelloWorld的实现类.
*/
publicclass HelloWorldImpl implements HelloWorld {
public String sayHelloWorld(String name) {
String helloWorld = "hello," + name;
return helloWorld;
}
}
3)Spring配置文件applicationContext.xml和xfire-servlet.xml的配置
首先我们在applicationContext.xml文件中配置对应的bean——HelloWorldBean,该xml文件的内容如下:
?xml version="1.0" encoding="UTF-8"?
!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
""
beans
bean id="HelloWorldBean" class="webservice.HelloWorldImpl"/
/beans
这个配置文件很简单,在此不详述 。
XFire为Spring 提供了方便易用的导出器XFireExporter,借助该导出器的支持 , 我们可以在Spring容器中将一个POJO导出为Web Service 。HelloWorld是业务服务类,在此拥有一个sayHelloWorld的方法,我们希望将此方法开放为Web Service 。在实际应用中,如果某个类具有众多的方法,而其中的某些方法不需要开放为Web Service的情况下,我们可以定义一个窄接口 , 该接口中只需定义那些开放为Web Service的业务方法 。
将一个业务类所有需要开放为Web Service的方法通过一个窄接口来描述是值得推荐的作法 , 这让Web Service的接口显得很“干净” 。其次,XFire的导出器也需要服务接口的支持,因为它采用基于接口的动态代理技术 。
窄接口中的方法在真实的系统中可能需要引用其它的业务类或DAO获取数据库中的真实数据,为了简化实例,我们在此简化了实例 。
下面让我们看看在xfire-servlet.xml文件中导出器的设置,该文件内容如下:
?xml version="1.0" encoding="UTF-8"?

推荐阅读