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

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

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

    posts - 15,comments - 29,trackbacks - 0
    Axis框架來自 Apache 開放源代碼組織,它是基于JAVA語言的最新的 SOAP 規(guī)范(SOAP 1.2)和 SOAP with Attachments 規(guī)范(來自 Apache Group )的開放源代碼實(shí)現(xiàn)。下面是它的核心引擎的體系結(jié)構(gòu)圖:



    下面以 http://www.webxml.com.cn/webservices/DomesticAirline.asmx?Wsdl  航班查詢服務(wù)為例來分析開發(fā)客戶端的步驟。
    1.首先從http://ws.apache.org/axis/index.html上下載axis的程序包。

    2.運(yùn)行cmd,進(jìn)入下載包解壓后的目錄,運(yùn)行   Java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java -p client  http://www.webxml.com.cn/webservices/DomesticAirline.asmx?Wsdl  
    (其中-p是生成代碼的包名,根據(jù)需要設(shè)置)
     然后把生成的代碼拷貝到項(xiàng)目里面。

    3.拷貝axis里面的包到工程里面。

    4.客戶端代碼。

    public List<TicketInfo> getDomesticAirlinesTime(String startCity, String lastCity, String theDate) throws RemoteException, ServiceException {
            DomesticAirline service 
    = new DomesticAirlineLocator();
            GetDomesticAirlinesTimeResponseGetDomesticAirlinesTimeResult airlines;

            airlines 
    = service.getDomesticAirlineSoap12().getDomesticAirlinesTime(startCity, lastCity,theDate, null);
        
            MessageElement[] FOCElement 
    = airlines.get_any();
            List FOCElementHead 
    = FOCElement[0].getChildren();//消息頭,DataSet對(duì)象    
            List FOCElementBody = FOCElement[1].getChildren();//消息體信息,DataSet對(duì)象  

            String nn 
    = FOCElementBody.get(0).toString();//消息體的字符串形式     
            
            

            SAXReader reader 
    = new SAXReader();
            Document document 
    = null;

            
    try {
                document 
    = document = DocumentHelper.parseText(nn);
            }
     catch (Exception e) {
                
    // TODO Auto-generated catch block
                System.out.println(e.toString());
            }

            
            
            Element root 
    = (Element)document.getRootElement(); // 得到根元素    

            List
    <TicketInfo> ticketInfoList = new ArrayList<TicketInfo>();
            
    for (Object e : root.elements())
            
    {
                TicketInfo ticketInfo 
    = new TicketInfo();
                Element element 
    = (Element) e;
                ticketInfo.setAirlineCompany(element.elementText(
    "Company"));
                ticketInfo.setFlightNumber(element.elementText(
    "AirlineCode"));
                ticketInfo.setStartAirport(element.elementText(
    "StartDrome"));
                ticketInfo.setEndAirport(element.elementText(
    "ArriveDrome"));
                ticketInfo.setAirCraftType(element.elementText(
    "Mode"));
                SimpleDateFormat  myFmt
    =new   SimpleDateFormat("HH:mm");     
                
    try {
                    ticketInfo.setStartTime(myFmt.parse(element.elementText(
    "StartTime")));
                    ticketInfo.setEndTime(myFmt.parse(element.elementText(
    "ArriveTime")));
                }
     catch (ParseException e1) {
                    
    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }

                
                ticketInfoList.add(ticketInfo);
            }

            
            
    return ticketInfoList;
        }

        
    }

    本來客戶端代碼應(yīng)該是比較簡單的,但是這個(gè)例子的webservice服務(wù)端是用.net寫的,查詢后返回DataSet類型,java沒有對(duì)應(yīng)的類型,所以只能把返回后的結(jié)果用xml來解析,然后在放入java的數(shù)據(jù)對(duì)象里面。
    posted on 2008-12-04 10:04 流腥魚 閱讀(2864) 評(píng)論(0)  編輯  收藏 所屬分類: 編程教程java

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 色噜噜亚洲男人的天堂| 久久九九亚洲精品| 国产99久久久国产精免费| 亚洲女初尝黑人巨高清| 在线观看免费av网站| 亚洲人成色777777老人头| 亚洲精品成人网久久久久久 | 最近的2019免费中文字幕| 亚洲精品第一国产综合精品| 亚洲成人黄色在线| 国产成人在线免费观看| 一区二区三区观看免费中文视频在线播放 | 亚洲尹人九九大色香蕉网站| 最近2019中文字幕mv免费看 | 成人无码区免费A∨直播| 亚洲精品熟女国产| 亚洲精品网站在线观看不卡无广告| 日韩人妻一区二区三区免费| MM1313亚洲精品无码久久| 亚洲成a人片在线观看中文动漫| 四虎www免费人成| 99热这里有免费国产精品| 美女隐私免费视频看| 亚洲电影免费观看| 亚洲熟女少妇一区二区| 国产成人免费高清激情视频| 中文字幕免费在线看电影大全| 亚洲精品国产suv一区88| 在线观看亚洲人成网站| 亚洲中文字幕成人在线| 精品国产精品久久一区免费式| 99久9在线|免费| 拍拍拍无挡视频免费观看1000| 国产精品成人亚洲| 亚洲精品第一综合99久久| 99人中文字幕亚洲区| 亚洲午夜久久久影院伊人| 免费A级毛片在线播放不收费| 我要看WWW免费看插插视频| 91青青国产在线观看免费| 国产在线精品一区免费香蕉|