<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)論排行榜

    主站蜘蛛池模板: 亚洲大片在线观看| 免费黄色网址入口| 亚洲成A人片777777| 在线免费观看国产视频| 亚洲综合色区在线观看| 日韩精品免费一线在线观看| 国产男女猛烈无遮挡免费视频| 亚洲VA中文字幕无码毛片| 国产午夜成人免费看片无遮挡| 久久久久久精品免费免费自慰| 67pao强力打造67194在线午夜亚洲 | 亚洲桃色AV无码| 久久精品免费电影| 亚洲黄色三级网站| 国产精品成人免费视频网站京东| 亚洲日本久久久午夜精品| 国产精品四虎在线观看免费 | 亚洲国产熟亚洲女视频| 看全色黄大色大片免费久久| 免费人人潮人人爽一区二区| 亚洲无线一二三四区手机| 免费视频一区二区| 亚洲国产成人久久一区WWW| 亚洲一级片在线观看| 四虎永久免费地址在线网站| 亚洲人成免费电影| 免费一级毛片在线播放不收费| 国产一级黄片儿免费看| 日韩免费无码一区二区视频| 一级一黄在线观看视频免费| 国产青草视频免费观看97 | 中文字幕无码日韩专区免费| 亚洲综合网美国十次| 免费国产99久久久香蕉| 亚洲专区中文字幕| 亚洲性日韩精品一区二区三区| 久久国产色AV免费观看| 无码乱人伦一区二区亚洲一| 性色av免费观看| 国内精品一级毛片免费看| 亚洲中文无码亚洲人成影院|