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

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

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

    半生心半生緣

    JAVA人生篇章

    axis入門之代碼篇(1)

    jacky于2006廣州

    配置好了環(huán)境,我們就可以進(jìn)行編碼了.
    一: 建立一個(gè)普通的java類做我們的server
    1package?com.test.service;
    2
    3public?class?TestServer?{
    4?public?String?say(String?arg)?{
    5????????System.out.println("some?one?call?me!");
    6????????return?arg;
    7????}

    8}
    這個(gè)類定義一個(gè)say()的方法提供給客戶端調(diào)用,返回類型是String.
    ok,這個(gè)類是最簡(jiǎn)單不過了.
    下面建立我們的部署文件:WEB-INF/server-config.wsdd
    ?1<?xml?version="1.0"?encoding="UTF-8"?>
    ?2<deployment?xmlns="http://xml.apache.org/axis/wsdd/"?xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
    ?3?<globalConfiguration>
    ?4??<parameter?name="adminPassword"?value="admin"/>
    ?5??<parameter?name="attachments.Directory"?value="C:\eclipse\workspace\bookstore\WEB-INF\attachments"/>
    ?6??<parameter?name="attachments.implementation"?value="org.apache.axis.attachments.AttachmentsImpl"/>
    ?7??<parameter?name="sendXsiTypes"?value="true"/>
    ?8??<parameter?name="sendMultiRefs"?value="true"/>
    ?9??<parameter?name="sendXMLDeclaration"?value="true"/>
    10??<parameter?name="axis.sendMinimizedElements"?value="true"/>
    11??<requestFlow>
    12???<handler?type="java:org.apache.axis.handlers.JWSHandler">
    13????<parameter?name="scope"?value="session"/>
    14???</handler>
    15???<handler?type="java:org.apache.axis.handlers.JWSHandler">
    16????<parameter?name="scope"?value="request"/>
    17????<parameter?name="extension"?value=".jwr"/>
    18???</handler>
    19??</requestFlow>
    20?</globalConfiguration>
    21?<handler?name="LocalResponder"?type="java:org.apache.axis.transport.local.LocalResponder"/>
    22?<handler?name="Authenticate"?type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
    23?<handler?name="URLMapper"?type="java:org.apache.axis.handlers.http.URLMapper"/>
    24?<service?name="Version"?provider="java:RPC">
    25??<parameter?name="allowedMethods"?value="getVersion"/>
    26??<parameter?name="className"?value="org.apache.axis.Version"/>
    27?</service>
    28??<service?name="TestServer"?provider="java:RPC">
    29??<parameter?name="className"?value="com.test.service.TestServer"/>
    30??<parameter?name="allowedMethods"?value="*"/>
    31??
    32?</service>
    33?<service?name="AdminService"?provider="java:MSG">
    34??<parameter?name="allowedMethods"?value="AdminService"/>
    35??<parameter?name="enableRemoteAdmin"?value="false"/>
    36??<parameter?name="className"?value="org.apache.axis.utils.Admin"/>
    37??<namespace>http://xml.apache.org/axis/wsdd/</namespace>
    38?</service>
    39?<transport?name="local">
    40??<responseFlow>
    41???<handler?type="LocalResponder"/>
    42??</responseFlow>
    43?</transport>
    44?<transport?name="http">
    45??<requestFlow>
    46???<handler?type="URLMapper"/>
    47???<handler?type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
    48??</requestFlow>
    49?</transport>
    50?
    51
    52</deployment>

    初看一下,有點(diǎn)復(fù)雜,我們先不管其中具體的配置是什么作用,看一下我們關(guān)注的:
    1<service?name="TestServer"?provider="java:RPC">
    2??<parameter?name="className"?value="com.test.service.TestServer"/>
    3??<parameter?name="allowedMethods"?value="*"/>??
    4?</service>
    這一段就是我們配置的service.name是我們給服務(wù)起的名稱.下來(lái)的className就是我們寫的類的路徑.再往下就是允許調(diào)用的方法,這里是為全部.
    不算復(fù)雜吧!
    現(xiàn)在,可以啟動(dòng)你的web服務(wù)器來(lái)看看建立的服務(wù)是否成功了.
    看一下我們?cè)趙eb.xml里配置的這么一段:
    1<servlet-mapping>
    2????????<servlet-name>AxisServlet</servlet-name>
    3????????<url-pattern>/services/*</url-pattern>
    4????</servlet-mapping>
    知道什么意思了嗎,就是從/services/請(qǐng)求的地址都是我們的service.
    從瀏覽器中瀏覽:
    http://localhost/WebService/services/
    將會(huì)顯示你現(xiàn)在所有的服務(wù)!那么表示我們建立的服務(wù)已經(jīng)成功.
    那下面就寫一個(gè)客戶端代碼調(diào)用我們的service.
    ?1?????public?static?void?main(String?[]?args)
    ?2????????{
    ?3????????????try?{
    ?4????????????????Options?options?=?new?Options(args);
    ?5????????????????
    ?6????????????????String?endpointURL?=?"http://localhost/WebService/services/TestServer";//options.getURL();
    ?7????????????????String?textToSend;
    ?8????????????????
    ?9????????????????args?=?options.getRemainingArgs();
    10????????????????
    11????????????????textToSend?=?"哈哈";
    12????????????????
    13????????????????Service??service?=?new?Service();
    14????????????????Call?call??=?(Call)?service.createCall();
    15?????????????
    16????????????????call.setTargetEndpointAddress(?new?java.net.URL(endpointURL)?);
    17???????????????
    18????????????????//第一個(gè)參數(shù)是包名,也就是包名的倒敘(可有可無(wú),因?yàn)樯厦娴膃ndpointURL已經(jīng)指定了類),后面是方法名
    19????????????????QName?q?=?new?QName("",?"say");
    20????????????????call.setOperationName(?q?);
    21????????????????call.addParameter(?"arg1",?XMLType.XSD_STRING,?ParameterMode.IN);//傳參數(shù)
    22????????????????call.setReturnType(?XMLType.QNAME_FAULTACTOR);//設(shè)定返回參數(shù)
    23
    24????????????????String?ret?=?(String)?call.invoke(?new?Object[]?{?textToSend?}?);
    25????????????????
    26????????????????System.out.println("返回的東西?:?"?+?ret?);
    27????????????????
    28????????????}
    ?catch?(Exception?e)?{
    29????????????????System.err.println(e.toString());
    30????????????}

    31????????}

    32}
    在你的web服務(wù)器還跑的時(shí)候,運(yùn)行上面的代碼.自己看看結(jié)果吧.
    easy?

    posted on 2006-04-29 18:02 jackyhuang 閱讀(906) 評(píng)論(1)  編輯  收藏

    評(píng)論

    # re: axis入門之代碼篇(1) 2009-05-21 10:34 redcoatjk

    很可惜這一段寫的有點(diǎn)亂了  回復(fù)  更多評(píng)論   


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2009年5月>
    262728293012
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    2006年4月29號(hào)凌晨0點(diǎn)開通我的blog http://www.1001m.com

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章分類

    文章檔案

    夢(mèng)境家園

    搜索

    積分與排名

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 91精品导航在线网址免费| 亚洲AV无码成人网站久久精品大| 久久久高清日本道免费观看| 亚洲日韩av无码中文| 亚洲人成在线影院| 一本久久a久久精品亚洲| 国产一区视频在线免费观看| 无码中文在线二区免费| 4444www免费看| 免费成人在线视频观看| kk4kk免费视频毛片| 久久精品熟女亚洲av麻豆| 亚洲三级高清免费| 91亚洲精品麻豆| 亚洲黄色高清视频| 亚洲成Av人片乱码色午夜| 伊人久久精品亚洲午夜| 亚洲一级片免费看| 亚洲国产一级在线观看| 国产在线观看免费完整版中文版| 免费观看成人毛片a片2008| 波多野结衣免费在线| 97青青草原国产免费观看| 久久99精品视免费看| av永久免费网站在线观看| 日本三级在线观看免费| 两个人看的www高清免费观看| 国产高潮流白浆喷水免费A片 | 免费在线观看自拍性爱视频| 在线观看亚洲网站| 黄页网址在线免费观看| 无遮挡a级毛片免费看| 麻豆亚洲AV成人无码久久精品 | 亚洲国产精品无码久久久不卡| 亚洲精品无码久久久| 亚洲另类少妇17p| 国产亚洲精品激情都市| 自拍偷自拍亚洲精品被多人伦好爽| 久久久久无码专区亚洲av| 亚洲综合色自拍一区| 亚洲高清国产AV拍精品青青草原|