Web Service修炼之一XFire入门2

二、XFire开发

1准备开发环境

   环境:MyEclipse  xx +tomcat6.0+JDK1.5

   xfire版本:xifre-1.2.6

   XFire所需jar:

   http://xfire.codehaus.org/下载xfire1.2.6-.zip压缩包,解压后libjar

   MyEclipse下新建一个Web Applications,命名为ws

    目录结构

 Web Service修炼之一XFire入门2

2、配置运行环境

    WEB-INF目录下新建一个web.xml文件,文件中输入:

xml代码

<?xml version="1.0" encoding="UTF-8"?>

<web-app id="WebApp_ID" version="2.4"

xmlns="http://java.sun.com/xml/ns/j2ee"

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

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 

http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

  <servlet> 

    <servlet-name>XFireServlet</servlet-name> 

    <display-name>XFire Servlet</display-name> 

    <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> 

  </servlet> 

  

  <servlet-mapping> 

    <servlet-name>XFireServlet</servlet-name> 

    <url-pattern>/servlet/XFireServlet/*</url-pattern> 

  </servlet-mapping> 

  

  <servlet-mapping> 

    <servlet-name>XFireServlet</servlet-name> 

    <url-pattern>/services/*</url-pattern> 

  </servlet-mapping> 

</web-app> 

    其中主要就是引入了XFireServlet,用以处理Web Service请求,并且负责提供Web ServiceWSDL,如果你发布了一个名为BookServiceWebService,则可以通过网址:
http://<服务器>[:端口]/<webapp>/services/来访问这个WebService,并且通过地址:http://<服务器>[:端口]/<webapp>/services/BookService?wsdl 来得到这个WebServiceWSDL信息。

3、开发应用程序

    src文件夹下新建一个packagecom.test.ws,在这个包下面新建一个接口:

    业务接口Java代码 

package com.test.ws;

public interface SayHelloService {

 //调用的业务方法

  public String sayHello(String name); 

}

 

    这个接口是告诉服务器你的WebService哪些方法可以被用户调用的。我们再来写一个SayHelloService的实现类,以完成业务逻辑:

业务Java代码 

package com.test.ws;

public class SayHelloServiceImpl implements SayHelloService {

    //业务实现方法

public String sayHello(String name) {

if(name==null){ 

    return "你叫什么名字呢?"

     } 

 return name+",早上好,还没有上学去吗 ?"

}

}

    这个类实现了sayHello方法,该方法是可以通过WebService调用访问到的。 接下来发布WebService

4配置部署服务

    在目录src下新建目录结构META-INF/xfire,然后在该文件夹下新建一个XML文件:services.xml,文件内容如下:

     xml代码 

<?xml version="1.0" encoding="UTF-8"?>

<!-- START SNIPPET: services -->

<beans xmlns="http://xfire.codehaus.org/config/1.0"> 

 <service> 

    <name>SayHelloService</name>

    <namespace>http://com.test.ws/SayHelloService</namespace>

    <serviceClass>com.test.ws.SayHelloService</serviceClass>

    <implementationClass>com.test.ws.SayHelloServiceImpl</implementationClass> 

 </service> 

</beans>  

<!-- END SNIPPET: services -->

    这个文件定义一个WebService: SayHelloService,并同时定义了接口和实现类。将上面创建的 SayHelloService发布成 Web 服务。

其中各元素的功能如下:

service

    service 标签和它所包含的 xml 内容为发布成 Web 服务的 POJO 提供完整的描述。

name

    Web 服务被发布时所采用的唯一名称。

namespace

    Web 服务发布时所使用的命名空间。

serviceClass

    Web 服务接口类的全名,包括包名和类名。

implemetationClass

Web 服务实现类的全名,包括包名和类名。

 把工程ws部署到tomcat

<!--EndFragment--><!--EndFragment-->

<!--EndFragment-->

你可能感兴趣的:(Web,service)