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

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

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

    J2EE社區(qū)

    茍有恒,何必三更起五更眠;
    最無益,只怕一日曝十日寒.
    posts - 241, comments - 318, trackbacks - 0, articles - 16

    java Web Service axis (實例一) server-config.wsdd生成工具

    Posted on 2010-08-18 17:20 xcp 閱讀(7175) 評論(0)  編輯  收藏 所屬分類: SOA
    一、第一個實例

    (一).服務(wù)端
    1.服務(wù)類(HelloService),加入需要的幾個包
    package cn.gov.luzhou.SiteServer.user.business.webService;

    public class HelloService {
        public String sayHello() {
            return "Hello";
        }

        public String sayHelloToPerson(String name) {
            if (name == null || name.equals("")) {
                name = "nobody";
            }
            return "Hello " + name;
        }
    }
    2.WEB-INF新建一個deploy.wsdd
    <?xml version="1.0" encoding="UTF-8"?>
    <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
        
    <service name="HelloServices" provider="java:RPC">
            
    <parameter name="className" value="cn.gov.luzhou.SiteServer.user.business.webService.HelloService"/>
            
    <parameter name="allowedMethods" value="*"/>
        
    </service>
    </deployment>
    3.Web Service有3種部署方式(Dynamic Invocation Interface ( DII),Dynamic Proxy方式 ,Stubs方式)在這我們使用Stubs方式

        a.提供一個小工具:deploywebservice.bat為了生成server-config.wsdd

    set Axis_Lib=D:\jar
    set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
    %Java_Cmd%  org.apache.axis.client.AdminClient -lhttp://localhost:8080/EGSS_User/services/AdminService deploy.wsdd
      --->說明:d:\jar就是下載下來的axis包的jar路徑,解析的時候要用戶,將其添加到環(huán)境變量;deploy.wsdd就是部署說明文件
         或者直接設(shè)置環(huán)境變量
     
    // 環(huán)境變量設(shè)置
        A. Client(Windows 2000/NT/XP)
             set AXIS_HOME 
    = c:\axis
             set AXIS_LIB  
    = %AXIS_HOME%\lib
             set AXISCLASSPATH 
    = %AXIS_LIB%\axis.jar;
                                 
    %AXIS_LIB%\commons-discovery.jar;
                                 
    %AXIS_LIB%\commons-logging.jar;
                                 
    %AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;
                                 
    %AXIS_LIB%\log4j-1.2.8.jar;
                                 
    %AXIS_LIB%\xml-apis.jar;
                                 
    %AXIS_LIB%\xercesImpl.jar
         B. Server(Unix
    +Tomcat4.1.X)
                        set AXIS_HOME
    =/usr/axis
             set AXIS_LIB
    =$AXIS_HOME/lib
             set AXISCLASSPATH
    =$AXIS_LIB/axis.jar:$AXIS_LIB/commons-discovery.jar:
                               $AXIS_LIB
    /commons-logging.jar:
                               $AXIS_LIB
    /jaxrpc.jar:$AXIS_LIB/saaj.jar:
                               $AXIS_LIB
    /log4j-1.2.8.jar:$AXIS_LIB/xml-apis.jar:
                               $AXIS_LIB
    /xercesImpl.jar
             export AXIS_HOME;
             export AXIS_LIB; 
             export AXISCLASSPATH
    //************ =============================
    // deploy service to WEB-INF/server-config.wsdd
    java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient
        
    -lhttp://localhost:8080/axistest/services/AdminService 
        src/com/augmentum/roger/axis/svr/deploy.wsdd

       b.運行:deploywebservice.bat
        將會生成一個文件,我就可以通過http://localhost:8080/EGSS_User/services/HelloServices.wsdl請求查看了




    (二).客戶端
    package two;

    import java.io.IOException;
    import java.net.MalformedURLException;

    import javax.xml.namespace.QName;
    import javax.xml.rpc.ServiceException;

    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;

    /**
     * 
     * 測試調(diào)用WebService
     
    */

    public class TestHelloService {
        
    private static final Log log = LogFactory.getLog(TestHelloService.class);
        
    private static final String HELLO_SERVICE_ENDPOINT = "http://localhost:8080/EGSS_User/services/HelloServices?wsdl";

        
    public static void main(String[] args) {
            TestHelloService tester 
    = new TestHelloService();
            tester.callSayHelloToPerson();
        }


        
    public void callSayHello() {
            
    try {
                Service service 
    = new Service();
                
                Call call 
    = (Call) service.createCall();
                call.setTargetEndpointAddress(
    new java.net.URL(HELLO_SERVICE_ENDPOINT));
                call.setOperationName(
    new QName("1.91","sayHello"));
                call.setReturnType(org.apache.axis.Constants.XSD_STRING);
                
    try {
                    String ret 
    = (String) call.invoke(new Object[] {});
                    System.out.println(
    "The return value is:" + ret);
                    
    return;
                }
     catch (IOException e) {
                    e.printStackTrace();
                }

            }
     catch (MalformedURLException e) {
                e.printStackTrace();
            }
     catch (ServiceException e) {
                e.printStackTrace();
            }

            log.error(
    "call sayHello service error!");
        }


        
    public void callSayHelloToPerson() {
            
    try {
                Service service 
    = new Service();
                Call call 
    = (Call) service.createCall();
                call.setTargetEndpointAddress(
    new java.net.URL(HELLO_SERVICE_ENDPOINT));
                call.setOperationName(
    new QName("http://webservice.sinosoft.com/","sayHelloToPerson"));
                call.addParameter(
    "name", org.apache.axis.Constants.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
                call.setReturnType(org.apache.axis.Constants.XSD_STRING);
                
    try {
                    String ret 
    = (String) call.invoke(new Object[] "向才鵬" });
                    System.out.println(
    "The return value is:" + ret);
                    
    return;
                }
     catch (IOException e) {
                    e.printStackTrace();
                }

            }
     catch (MalformedURLException e) {
                e.printStackTrace();
            }
     catch (ServiceException e) {
                e.printStackTrace();
            }

            log.error(
    "call sayHello service error!");
        }

    }

    OK了
    http://rogershi.blogbus.com/logs/205853.html


    名稱: ?4C.ESL | .↗Evon
    口號: 遇到新問題?先要尋找一個方案乄而不是創(chuàng)造一個方案こ
    mail: 聯(lián)系我



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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 一级a性色生活片久久无少妇一级婬片免费放 | 精品乱子伦一区二区三区高清免费播放| 亚洲中文字幕无码爆乳av中文| 日本免费在线中文字幕| 美女视频黄免费亚洲| 亚洲国产成人a精品不卡在线| 毛片在线全部免费观看| 亚洲国产日韩综合久久精品| 亚洲精品尤物yw在线影院| 久久国产高潮流白浆免费观看| 亚洲乱码中文字幕在线| 亚洲精品美女久久777777| 一二三四在线播放免费观看中文版视频| 成人亚洲国产精品久久| 亚洲精品私拍国产福利在线| 日本特黄特色aa大片免费| 日韩内射激情视频在线播放免费| 亚洲成av人在线观看网站| 亚洲产国偷V产偷V自拍色戒 | 女人被弄到高潮的免费视频| 成全视成人免费观看在线看| 亚洲av无码国产综合专区 | 亚洲一区二区三区高清| 免费大片黄手机在线观看| 67pao强力打造高清免费| 三级片免费观看久久| 亚洲一区二区三区高清视频| 亚洲啪啪AV无码片| 成年女人永久免费观看片| 亚洲三级在线免费观看| 久久久久久噜噜精品免费直播| 亚洲欧美第一成人网站7777| 久久精品蜜芽亚洲国产AV| 国产L精品国产亚洲区久久| 大学生高清一级毛片免费| 99久久99热精品免费观看国产| a高清免费毛片久久| 美景之屋4在线未删减免费| 日韩亚洲产在线观看| 亚洲色成人网一二三区| 亚洲国产精品一区二区第一页|