<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java, Only Java!

    統計

    留言簿(20)

    積分與排名

    好友空間

    文檔技巧

    閱讀排行榜

    評論排行榜

    webservice-之使用xfire開發(轉自勇哥的BLOG)

    Myeclipse5.X 支持xfire支持的非常棒。這里講解一個簡單的例子,此文章為引用文章,僅做保留,供學習參考使用。

    一、服務端程序開發

    1 、首先建立一個web service工程

    點擊finish之后,myeclipse自動幫你生成services.xml以及web應用目錄結構,其中的services.xml是你導出服務的配置文件,注意在WEB-INF/web.xml文件中配置了xfire自己的:

    Servlet 代碼

    <servlet>?

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

    ?<load-on-startup>0</load-on-startup>?

    </servlet>?

    <servlet-mapping>?

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

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

    </servlet-mapping>?

    ?

    2 、接下來,現在編寫要導出的pojo ,首先是接口:

    過程:File>New>Other>MyEclipse>Web Service

    選擇:Create web service from Java bean,把Create new javabean也勾上

    3 、在導航頁面中,輸入

    web service name:HelloWorldTest

    java package : services

    services Interface : HelloWorldTestRemote

    services impl.class : HelloWorldTestBean

    其他的默認,點finish

    最后可以看到Web Services?? 下面的services.xml的內容如下

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

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

    ??? <service>

    ??????? <name>HelloWorldTest</name>

    ??????? <serviceClass>services.HelloWorldTestRemote</serviceClass>? ??? <implementationClass>services.HelloWorldTestBean</implementationClass>

    ??????? <style>wrapped</style>

    ??????? <use>literal</use>

    ??????? <scope>application</scope>

    ??? </service>

    </beans>

    4 services包中的文件

    HelloWorldTestRemote.java

    -----------------------------------------------

    package services;

    public interface HelloWorldTestRemote

    {??

    ??? public String example(String message);?

    }

    ----------------------------------------------------------

    HelloWorldTestImpl.java

    ----------------------------------------------------

    package services;

    public class HelloWorldTestBean implements HelloWorldTestRemote

    {

    ??? public String example(String message)

    ??? {

    ??????? return "Hello:"+message;

    ??? }??

    }

    ------------------------------------------------------------

    到此為止webServices編碼工作完成,現在開始部署到tomcat這里省略。

    部署好后可以測試下:

    1)查看可用的服務

    http://localhost:8080/HelloWorld/services

    2)查看wsdl

    http://localhost:8080/HelloWorld/services/HelloWorldTest?wsdl

    ?

    /////////////////////////////////////////////////////////////////////////////

    /////////////////////////////////////////////////////////////////////////////

    二、客戶端應用程序開發

    1 、新建工程useWebService,并且建立clientservices

    2 bulid path中導入,XFire 1.1 core librariesXFire 1.1 HTTP client libraries.

    SayHello.java

    ----------------------------------------

    package client;

    import java.net.MalformedURLException;

    import org.codehaus.xfire.XFireFactory;

    import org.codehaus.xfire.client.XFireProxyFactory;

    import org.codehaus.xfire.service.Service;

    import org.codehaus.xfire.service.binding.ObjectServiceFactory;

    import services.HelloWorldTestRemote;

    public class SayHello

    {

    ??? public String say(String name)

    ??? {

    ??????? String result = "";

    Service srvcModel = new ObjectServiceFactory().create(HelloWorldTestRemote.class);

    ??????? XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());

    ??????? String helloWorldURL = "http://localhost:8080/HelloWorld/services/HelloWorldTest";

    ??????? try

    ??????? {

    ??????????? HelloWorldTestRemote srvc = (HelloWorldTestRemote) factory.create(srvcModel, helloWorldURL);

    ??????????? result = srvc.example(name);

    ??????????? System.out.println(result);

    ??????? }

    ??????? catch (MalformedURLException e)

    ??????? {

    ??????????? e.printStackTrace();

    ??????? } finally

    ??????? {

    ??????????? return result;

    ??????? }

    ??? }

    }

    --------------------------------------------------------------

    HelloWorldTestRemote.java

    ---------------------------------------------------------------

    package services;

    ?

    public interface? HelloWorldTestRemote

    {

    ??? public String example(String message);

    }-----------------------------------------------------------------

    創建index.jspbody部分

    -----------------------

    <form name="form1" action="say.jsp" method="POST">

    您的大名:<input name="userName" type="text"/> <input value="提交" type="submit"/>

    </form>

    -------------------------------

    創建say.jsp,body部分

    ----------------------------------------------------------------

    <%

    String name=(String)request.getParameter("userName");

    String result=new SayHello().say(name);

    out.print(result);

    %>

    webService 遠程調用結果: <%=result %>

    ------------------------------------------------------------------------

    運行下測試!OK

    posted on 2008-03-03 09:53 zYx.Tom 閱讀(1294) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产亚洲精品影视在线产品| 久久精品国产亚洲AV麻豆网站| 成人免费无码大片a毛片| 国产午夜鲁丝片AV无码免费| 色欲aⅴ亚洲情无码AV| 特a级免费高清黄色片| 久久国产精品成人片免费| 亚洲国产精品第一区二区三区| 久久久亚洲AV波多野结衣 | 97人妻无码一区二区精品免费| 日本一道高清不卡免费| 亚洲天堂男人天堂| 一级做a免费视频观看网站| 无码专区永久免费AV网站| 亚洲AV无码一区二区三区DV| 美国毛片亚洲社区在线观看| 国产又大又粗又硬又长免费| 青青免费在线视频| 天堂在线免费观看中文版| 亚洲视频免费在线播放| 无码国产精品一区二区免费式影视| 久久久久亚洲精品男人的天堂| a一级爱做片免费| 日本免费的一级v一片| 亚洲AV第一成肉网| 国内一级一级毛片a免费| 色视频在线观看免费| 亚洲精品乱码久久久久久久久久久久 | 国产羞羞的视频在线观看免费| 在线日韩av永久免费观看| 无人视频在线观看免费播放影院| 丁香花在线观看免费观看| 久久亚洲中文字幕精品有坂深雪 | 久久国产乱子精品免费女| 亚洲理论片在线中文字幕| 久久99国产综合精品免费| 最新亚洲春色Av无码专区| 免费国产黄线在线观看| 一级免费黄色大片| 亚洲午夜精品在线| 中文字幕无码成人免费视频|