<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 閱讀(1292) 評論(0)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 亚洲午夜久久久久久尤物| 亚洲欧美日韩中文高清www777| 1a级毛片免费观看| 一本天堂ⅴ无码亚洲道久久| 国产jizzjizz视频免费看| a级毛片毛片免费观看久潮| 亚洲一卡二卡三卡| 久久久无码精品亚洲日韩软件| 日韩插啊免费视频在线观看| 亚洲国产精品精华液| 国产亚洲精品国产| 毛片免费观看网址| APP在线免费观看视频| 亚洲国产精品无码久久久秋霞1| 亚洲av永久无码制服河南实里| 久久电影网午夜鲁丝片免费| 男人天堂免费视频| 久久亚洲AV成人无码国产电影| 亚洲AV日韩AV高潮无码专区| 日本免费v片一二三区| 69视频免费观看l| 窝窝影视午夜看片免费| 亚洲天堂中文字幕在线观看| 亚洲精品无码激情AV| 久久精品无码一区二区三区免费| 久久九九久精品国产免费直播 | 久久精品熟女亚洲av麻豆 | 亚洲国产一区国产亚洲| 国产一级大片免费看| 又黄又爽又成人免费视频| 中文精品人人永久免费| mm1313亚洲国产精品无码试看| 亚洲精品在线播放| 亚洲动漫精品无码av天堂| 亚洲七七久久精品中文国产| 免费观看美女裸体网站| 免费精品国产日韩热久久| 免费国产成人α片| 成人妇女免费播放久久久| 国产精品亚洲综合| 亚洲av成人片在线观看|