﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-kusejava-随笔分类-web service</title><link>http://www.blogjava.net/kusejava/category/10916.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 07:46:43 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 07:46:43 GMT</pubDate><ttl>60</ttl><item><title>axis2 发布webservice记</title><link>http://www.blogjava.net/kusejava/archive/2006/05/09/45246.html</link><dc:creator>kuse的java流水帐</dc:creator><author>kuse的java流水帐</author><pubDate>Tue, 09 May 2006 09:28:00 GMT</pubDate><guid>http://www.blogjava.net/kusejava/archive/2006/05/09/45246.html</guid><wfw:comment>http://www.blogjava.net/kusejava/comments/45246.html</wfw:comment><comments>http://www.blogjava.net/kusejava/archive/2006/05/09/45246.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kusejava/comments/commentRss/45246.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kusejava/services/trackbacks/45246.html</trackback:ping><description><![CDATA[
		<p>网上关于axis2做webservice的中文文章并不多<br />axis2确实和axis1有很大不同<br /><br />其中返回自定义对象的方法似乎就不兼容(可能仅仅是我还没研究出来), axis1返回对象或对象列表可以直接在方法返回类型中写明, serverlet会自动翻译成wsdl, 虽然axis2也可以自动翻译, 但是用过的客户端生成工具都没法直接使用此服务, 最后都归于"到OMElemet 对象无法转换", 所以我的方法只好自己写转换函数, 我想这个应该不是axis2的标准方法吧, 怎么会越来越麻烦?<br /><br />下面讲一下我的使用流程<br />需求: 做个webservice服务, 从数据库里面读取flightleg的一个列表并返回, flightleg列表可以认为是经过一个select语句返回的记录集合<br /><br />软件环境, windows xp sp2, tomcat5.5 for windows 单一安装版, jre1.5(tomcat5.5的需要), axis2-0.95(当时是最新版)<br /><br />试验流程:<br /><br />       直接安装 tomcat5.5 for windows , 发现服务总是在启动之后马上自己关闭, 查找原因, 发现原来自己用的都是jre1.4, 后从别地拷贝一个jre_1.5目录到Program Files\j2sdk1.4.2_05中, 然后设置tomcat的 java virtual machine 为Program Files\j2sdk1.4.2_05\jre_1.5\bin\client\jvm.dll , 即可正常启动.<br /><br />       axis2安装, 这个网上介绍的很多, 也很容易, 就下载那个axis2.war包, 拷贝到Program Files\Apache Software Foundation\Tomcat 5.5\webapps\目录中, 就算发布了, tomcat自动感知, 并生成axis2这个目录结构.  进入<a href="http://localhost:8080/axis2/">http://localhost:8080/axis2/</a> 可以看到欢迎页面, 然后点击<a href="http://localhost:8080/axis2/listServices">Services</a> 可以看到几个示范serviece, 具体怎么使用就不多说了, 网上不少, 自带的doc也有说明.<br />      编写service程序, 后面逻辑就不管了, 关键要编写个serviceproxy类,  并在里面暴露方法作为webserivce调用, sample里面也有很多, 但是至今还没看到返回自定义对象的. 我写的如下:</p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">    </span>
				<span style="COLOR: #0000ff">public</span>
				<span style="COLOR: #000000"> OMElement getPVGFlightLegs()<br /><img id="Codehighlighter1_44_285_Open_Image" onclick="this.style.display='none'; Codehighlighter1_44_285_Open_Text.style.display='none'; Codehighlighter1_44_285_Closed_Image.style.display='inline'; Codehighlighter1_44_285_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_44_285_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_44_285_Closed_Text.style.display='none'; Codehighlighter1_44_285_Open_Image.style.display='inline'; Codehighlighter1_44_285_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span>
				<span id="Codehighlighter1_44_285_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_44_285_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        List list </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">null</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        InquiryEngine engine </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> InquiryFactory.getInquiryEngine();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        list </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> (List)engine.getPVGFlightLegs();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        OMElement ele </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">null</span>
						<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        ele </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> createOMElementFromList(list);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000"> ele;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span>
				</span>
		</div>
		<p>     返回的是OMElement 统一对象, 需要自己构造OMElement对象树并返回,  createOMElementFromList() 代码如下:<br /><br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<p>
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">    </span>
						<span style="COLOR: #0000ff">
								<font color="#000000">    public OMElement createOMElementFromList(List flightLegInfoList)   <br />    {<br />        <br />        OMFactory fac = OMAbstractFactory.getOMFactory();<br />        OMNamespace omNs = fac.createOMNamespace("<a href="http://localhost:8080/axis2/services/FidsService">http://localhost:8080/axis2/services/FidsService</a>", "fids");<br />        OMElement resp = fac.createOMElement("flightLeglist", omNs);<br />        for(Iterator it = flightLegInfoList.iterator(); it.hasNext(); )<br />        {<br />            FlightLegInfo flightLegInfo = (FlightLegInfo)it.next();</font>
						</span>
				</p>
				<p>
						<span style="COLOR: #0000ff">
								<font color="#000000">         OMElement record = fac.createOMElement("record", omNs);<br />         OMElement flightNoElement = fac.createOMElement("flightNo", omNs);<br />         OMElement tailNoElement = fac.createOMElement("tailNo", omNs);<br />         flightNoElement.addChild(fac.createText(flightNoElement, flightLegInfo.getFlightNo()));<br />         tailNoElement.addChild(fac.createText(tailNoElement, flightLegInfo.getTailNo()));<br />         record.addChild(flightNoElement);<br />         record.addChild(tailNoElement);<br />         resp.addChild(record);<br />        } <br />        return resp;<br />    }</font>
						</span>
						<span id="Codehighlighter1_44_285_Open_Text">
								<span style="COLOR: #000000">
								</span>
						</span>
				</p>
		</div>
		<p>     代码的含义是返回包含flightNo和tailNo的record列表, 构造成XML树.<br /><br />     web-inf\services.xml 如下:<br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">service </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="FidsService"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">description</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        This is a fids web service.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">description</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">parameter </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="ServiceClass"</span>
				<span style="COLOR: #ff0000"> locked</span>
				<span style="COLOR: #0000ff">="false"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">com.cea2.service.fids.ServiceProxy</span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">parameter</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">operation </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="getPVGFlightLegs"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">messageReceiver </span>
				<span style="COLOR: #ff0000">class</span>
				<span style="COLOR: #0000ff">="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">operation</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">service</span>
				<span style="COLOR: #0000ff">&gt;</span>
		</div>
		<p>       然后把所有的class,lib,web-inf\services.xml 等组织起来,打个jar包, 并改后缀为aar (这个过程有个eclipse插件Axis2_Service_Archiver可以完成这个过程, 但不太会用, 还事先需要.wsdl文件??), 并拷贝到Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis2\WEB-INF\services\中. 然后重启tomcat,  进入<a href="http://localhost:8080/axis2/">http://localhost:8080/axis2/</a> 看services, 里面有<a href="http://localhost:8080/axis2/services/FidsService?wsdl">FidsService</a>, 点击可以看到wsdl, 服务端算成功大半了.<br /><br /><br />      客户端: 在做返回自定义对象的时候, 用了几个eclipse自动生成工具, 甚至还用了axis2自带命令行wsdl2java, 都不行. 改为返回OMElement的时候, 就干脆没有用gererator,  直接写了testClient类, 并把service端中的FlightLegInfo(对应单条记录对象)拷贝过来.  testClient如下<br /><br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">package</span>
				<span style="COLOR: #000000"> test;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.axis2.AxisFault;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.axis2.Constants;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.axis2.addressing.EndpointReference;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.axis2.client.Options;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.axis2.client.ServiceClient;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.ws.commons.om.OMElement;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> org.apache.ws.commons.om.OMNode;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> javax.xml.stream.XMLOutputFactory;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> javax.xml.stream.XMLStreamException;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> java.io.StringWriter;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> java.util.ArrayList;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> java.util.Iterator;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">import</span>
				<span style="COLOR: #000000"> java.util.List;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_503_613_Open_Image" onclick="this.style.display='none'; Codehighlighter1_503_613_Open_Text.style.display='none'; Codehighlighter1_503_613_Closed_Image.style.display='inline'; Codehighlighter1_503_613_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_503_613_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_503_613_Closed_Text.style.display='none'; Codehighlighter1_503_613_Open_Image.style.display='inline'; Codehighlighter1_503_613_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_503_613_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/** */</span>
				<span id="Codehighlighter1_503_613_Open_Text">
						<span style="COLOR: #008000">/**</span>
						<span style="COLOR: #008000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * Sample for synchronous single channel blocking service invocation.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * Message Exchage Pattern IN-OUT<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /> </span>
						<span style="COLOR: #008000">*/</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img id="Codehighlighter1_639_3334_Open_Image" onclick="this.style.display='none'; Codehighlighter1_639_3334_Open_Text.style.display='none'; Codehighlighter1_639_3334_Closed_Image.style.display='inline'; Codehighlighter1_639_3334_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_639_3334_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_639_3334_Closed_Text.style.display='none'; Codehighlighter1_639_3334_Open_Image.style.display='inline'; Codehighlighter1_639_3334_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">public</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> testClient </span>
				<span id="Codehighlighter1_639_3334_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_639_3334_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">static</span>
						<span style="COLOR: #000000"> EndpointReference targetEPR </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> EndpointReference(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">http://localhost:8080/axis2/services/FidsService</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_809_1868_Open_Image" onclick="this.style.display='none'; Codehighlighter1_809_1868_Open_Text.style.display='none'; Codehighlighter1_809_1868_Closed_Image.style.display='inline'; Codehighlighter1_809_1868_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_809_1868_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_809_1868_Closed_Text.style.display='none'; Codehighlighter1_809_1868_Open_Image.style.display='inline'; Codehighlighter1_809_1868_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">static</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">void</span>
						<span style="COLOR: #000000"> main(String args[]) </span>
						<span id="Codehighlighter1_809_1868_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_809_1868_Open_Text">
								<span style="COLOR: #000000">{<br /><img id="Codehighlighter1_823_1706_Open_Image" onclick="this.style.display='none'; Codehighlighter1_823_1706_Open_Text.style.display='none'; Codehighlighter1_823_1706_Closed_Image.style.display='inline'; Codehighlighter1_823_1706_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_823_1706_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_823_1706_Closed_Text.style.display='none'; Codehighlighter1_823_1706_Open_Image.style.display='inline'; Codehighlighter1_823_1706_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">try</span>
								<span style="COLOR: #000000"> </span>
								<span id="Codehighlighter1_823_1706_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_823_1706_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            OMElement payload </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> ClientUtil.getEchoOMElement();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Options options </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> </span>
										<span style="COLOR: #0000ff">new</span>
										<span style="COLOR: #000000"> Options();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            options.setTo(targetEPR);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            options.setTransportInProtocol(Constants.TRANSPORT_HTTP);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            options.setAction(</span>
										<span style="COLOR: #000000">"</span>
										<span style="COLOR: #000000">getPVGFlightLegs</span>
										<span style="COLOR: #000000">"</span>
										<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span>
										<span style="COLOR: #008000">//</span>
										<span style="COLOR: #008000">Blocking invocation</span>
										<span style="COLOR: #008000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
										</span>
										<span style="COLOR: #000000">            ServiceClient sender </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> </span>
										<span style="COLOR: #0000ff">new</span>
										<span style="COLOR: #000000"> ServiceClient();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            sender.setOptions(options);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            OMElement result </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> sender.sendReceive(payload);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span>
										<span style="COLOR: #008000">//</span>
										<span style="COLOR: #008000">显示xml</span>
										<span style="COLOR: #008000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
										</span>
										<span style="COLOR: #000000">            StringWriter writer </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> </span>
										<span style="COLOR: #0000ff">new</span>
										<span style="COLOR: #000000"> StringWriter();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            result.serialize(XMLOutputFactory.newInstance()<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    .createXMLStreamWriter(writer));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            writer.flush();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            System.out.println(writer.toString());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span>
										<span style="COLOR: #008000">//</span>
										<span style="COLOR: #008000">System.out.println("first:");<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span>
										<span style="COLOR: #008000">//</span>
										<span style="COLOR: #008000">结果转换为list</span>
										<span style="COLOR: #008000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
										</span>
										<span style="COLOR: #000000">            List list </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> getResults(result);<br /><img id="Codehighlighter1_1736_1787_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1736_1787_Open_Text.style.display='none'; Codehighlighter1_1736_1787_Closed_Image.style.display='inline'; Codehighlighter1_1736_1787_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1736_1787_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1736_1787_Closed_Text.style.display='none'; Codehighlighter1_1736_1787_Open_Image.style.display='inline'; Codehighlighter1_1736_1787_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #0000ff">catch</span>
								<span style="COLOR: #000000"> (AxisFault axisFault) </span>
								<span id="Codehighlighter1_1736_1787_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_1736_1787_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            axisFault.printStackTrace();<br /><img id="Codehighlighter1_1819_1862_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1819_1862_Open_Text.style.display='none'; Codehighlighter1_1819_1862_Closed_Image.style.display='inline'; Codehighlighter1_1819_1862_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1819_1862_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1819_1862_Closed_Text.style.display='none'; Codehighlighter1_1819_1862_Open_Image.style.display='inline'; Codehighlighter1_1819_1862_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">  </span>
								<span style="COLOR: #0000ff">catch</span>
								<span style="COLOR: #000000"> (XMLStreamException e) </span>
								<span id="Codehighlighter1_1819_1862_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_1819_1862_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /><img id="Codehighlighter1_1929_2490_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1929_2490_Open_Text.style.display='none'; Codehighlighter1_1929_2490_Closed_Image.style.display='inline'; Codehighlighter1_1929_2490_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1929_2490_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1929_2490_Closed_Text.style.display='none'; Codehighlighter1_1929_2490_Open_Image.style.display='inline'; Codehighlighter1_1929_2490_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">static</span>
						<span style="COLOR: #000000"> List getResults(OMElement element) </span>
						<span id="Codehighlighter1_1929_2490_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_1929_2490_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Iterator iterator </span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000"> element.getChildElements();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        List list </span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #0000ff">new</span>
								<span style="COLOR: #000000"> ArrayList();<br /><img id="Codehighlighter1_2059_2463_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2059_2463_Open_Text.style.display='none'; Codehighlighter1_2059_2463_Closed_Image.style.display='inline'; Codehighlighter1_2059_2463_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2059_2463_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2059_2463_Closed_Text.style.display='none'; Codehighlighter1_2059_2463_Open_Image.style.display='inline'; Codehighlighter1_2059_2463_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000"> (iterator.hasNext()) </span>
								<span id="Codehighlighter1_2059_2463_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_2059_2463_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            OMNode omNode </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> (OMNode) iterator.next();<br /><img id="Codehighlighter1_2172_2453_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2172_2453_Open_Text.style.display='none'; Codehighlighter1_2172_2453_Closed_Image.style.display='inline'; Codehighlighter1_2172_2453_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2172_2453_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2172_2453_Closed_Text.style.display='none'; Codehighlighter1_2172_2453_Open_Image.style.display='inline'; Codehighlighter1_2172_2453_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">if</span>
										<span style="COLOR: #000000"> (omNode.getType() </span>
										<span style="COLOR: #000000">==</span>
										<span style="COLOR: #000000"> OMNode.ELEMENT_NODE) </span>
										<span id="Codehighlighter1_2172_2453_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
												<img src="http://www.blogjava.net/images/dot.gif" />
										</span>
										<span id="Codehighlighter1_2172_2453_Open_Text">
												<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                OMElement omElement </span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000"> (OMElement) omNode;<br /><img id="Codehighlighter1_2297_2439_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2297_2439_Open_Text.style.display='none'; Codehighlighter1_2297_2439_Closed_Image.style.display='inline'; Codehighlighter1_2297_2439_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2297_2439_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2297_2439_Closed_Text.style.display='none'; Codehighlighter1_2297_2439_Open_Image.style.display='inline'; Codehighlighter1_2297_2439_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span>
												<span style="COLOR: #0000ff">if</span>
												<span style="COLOR: #000000"> ( omElement.getLocalName().equals(</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">record</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">) ) </span>
												<span id="Codehighlighter1_2297_2439_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
														<img src="http://www.blogjava.net/images/dot.gif" />
												</span>
												<span id="Codehighlighter1_2297_2439_Open_Text">
														<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    FlightLegInfo flightLegInfo </span>
														<span style="COLOR: #000000">=</span>
														<span style="COLOR: #000000"> getFlightLegInfo(omElement);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    list.add(flightLegInfo);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span>
												</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
										</span>
										<span style="COLOR: #000000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">return</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #0000ff">null</span>
								<span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">static</span>
						<span style="COLOR: #000000"> FlightLegInfo getFlightLegInfo(OMElement element)<br /><img id="Codehighlighter1_2570_3332_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2570_3332_Open_Text.style.display='none'; Codehighlighter1_2570_3332_Closed_Image.style.display='inline'; Codehighlighter1_2570_3332_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2570_3332_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2570_3332_Closed_Text.style.display='none'; Codehighlighter1_2570_3332_Open_Image.style.display='inline'; Codehighlighter1_2570_3332_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span>
						<span id="Codehighlighter1_2570_3332_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_2570_3332_Open_Text">
								<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        FlightLegInfo flightLegInfo </span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #0000ff">new</span>
								<span style="COLOR: #000000"> FlightLegInfo();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Iterator iterator </span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000"> element.getChildElements();<br /><img id="Codehighlighter1_2722_3296_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2722_3296_Open_Text.style.display='none'; Codehighlighter1_2722_3296_Closed_Image.style.display='inline'; Codehighlighter1_2722_3296_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2722_3296_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2722_3296_Closed_Text.style.display='none'; Codehighlighter1_2722_3296_Open_Image.style.display='inline'; Codehighlighter1_2722_3296_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">while</span>
								<span style="COLOR: #000000"> (iterator.hasNext()) </span>
								<span id="Codehighlighter1_2722_3296_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
										<img src="http://www.blogjava.net/images/dot.gif" />
								</span>
								<span id="Codehighlighter1_2722_3296_Open_Text">
										<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            OMNode omNode </span>
										<span style="COLOR: #000000">=</span>
										<span style="COLOR: #000000"> (OMNode) iterator.next();<br /><img id="Codehighlighter1_2835_3286_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2835_3286_Open_Text.style.display='none'; Codehighlighter1_2835_3286_Closed_Image.style.display='inline'; Codehighlighter1_2835_3286_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2835_3286_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2835_3286_Closed_Text.style.display='none'; Codehighlighter1_2835_3286_Open_Image.style.display='inline'; Codehighlighter1_2835_3286_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span>
										<span style="COLOR: #0000ff">if</span>
										<span style="COLOR: #000000"> (omNode.getType() </span>
										<span style="COLOR: #000000">==</span>
										<span style="COLOR: #000000"> OMNode.ELEMENT_NODE) </span>
										<span id="Codehighlighter1_2835_3286_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
												<img src="http://www.blogjava.net/images/dot.gif" />
										</span>
										<span id="Codehighlighter1_2835_3286_Open_Text">
												<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                OMElement omElement </span>
												<span style="COLOR: #000000">=</span>
												<span style="COLOR: #000000"> (OMElement) omNode;<br /><img id="Codehighlighter1_2962_3121_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2962_3121_Open_Text.style.display='none'; Codehighlighter1_2962_3121_Closed_Image.style.display='inline'; Codehighlighter1_2962_3121_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2962_3121_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2962_3121_Closed_Text.style.display='none'; Codehighlighter1_2962_3121_Open_Image.style.display='inline'; Codehighlighter1_2962_3121_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span>
												<span style="COLOR: #0000ff">if</span>
												<span style="COLOR: #000000"> ( omElement.getLocalName().equals(</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">flightNo</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">) ) </span>
												<span id="Codehighlighter1_2962_3121_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
														<img src="http://www.blogjava.net/images/dot.gif" />
												</span>
												<span id="Codehighlighter1_2962_3121_Open_Text">
														<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    flightLegInfo.setFlightNo(omElement.getText());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    System.out.println(</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">flightNo:</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">+</span>
														<span style="COLOR: #000000">omElement.getText());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span>
												</span>
												<span style="COLOR: #000000">
														<br />
														<img id="Codehighlighter1_3188_3272_Open_Image" onclick="this.style.display='none'; Codehighlighter1_3188_3272_Open_Text.style.display='none'; Codehighlighter1_3188_3272_Closed_Image.style.display='inline'; Codehighlighter1_3188_3272_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
														<img id="Codehighlighter1_3188_3272_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_3188_3272_Closed_Text.style.display='none'; Codehighlighter1_3188_3272_Open_Image.style.display='inline'; Codehighlighter1_3188_3272_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span>
												<span style="COLOR: #0000ff">if</span>
												<span style="COLOR: #000000"> ( omElement.getLocalName().equals(</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">tailNo</span>
												<span style="COLOR: #000000">"</span>
												<span style="COLOR: #000000">) ) </span>
												<span id="Codehighlighter1_3188_3272_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
														<img src="http://www.blogjava.net/images/dot.gif" />
												</span>
												<span id="Codehighlighter1_3188_3272_Open_Text">
														<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    flightLegInfo.setTailNo(omElement.getText());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span>
												</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span>
										</span>
										<span style="COLOR: #000000">
												<br />
												<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
								</span>
								<span style="COLOR: #000000">
										<br />
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span>
								<span style="COLOR: #0000ff">return</span>
								<span style="COLOR: #000000"> flightLegInfo;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>
		<p> </p>
		<p>     需要自己转换成FlightLegInfo 的list, 图方便, 直接在转换函数里面打印了一些测试输出数据.  算是完成了service的开发.</p>
<img src ="http://www.blogjava.net/kusejava/aggbug/45246.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kusejava/" target="_blank">kuse的java流水帐</a> 2006-05-09 17:28 <a href="http://www.blogjava.net/kusejava/archive/2006/05/09/45246.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>