??xml version="1.0" encoding="utf-8" standalone="yes"?>99久久精品费精品国产,免费福利在线观看,亚洲图片自拍偷拍http://www.aygfsteel.com/alwayscy/archive/2007/12/05/165446.html我爱佛_我爱佛_Wed, 05 Dec 2007 04:00:00 GMThttp://www.aygfsteel.com/alwayscy/archive/2007/12/05/165446.htmlhttp://www.aygfsteel.com/alwayscy/comments/165446.htmlhttp://www.aygfsteel.com/alwayscy/archive/2007/12/05/165446.html#Feedback0http://www.aygfsteel.com/alwayscy/comments/commentRss/165446.htmlhttp://www.aygfsteel.com/alwayscy/services/trackbacks/165446.html阅读全文

我爱佛_ 2007-12-05 12:00 发表评论
]]>
cxf的XML中jaxws:endpoint中用bean引用格式http://www.aygfsteel.com/alwayscy/archive/2007/11/01/157556.html我爱佛_我爱佛_Thu, 01 Nov 2007 09:38:00 GMThttp://www.aygfsteel.com/alwayscy/archive/2007/11/01/157556.htmlhttp://www.aygfsteel.com/alwayscy/comments/157556.htmlhttp://www.aygfsteel.com/alwayscy/archive/2007/11/01/157556.html#Feedback0http://www.aygfsteel.com/alwayscy/comments/commentRss/157556.htmlhttp://www.aygfsteel.com/alwayscy/services/trackbacks/157556.html

<bean id="nodeSvcImpl" class="com.exchangebit.nms.magic.NodeSvcImpl">
<property name="notifyClient" ref="notifyClient"/>
</bean>


<jaxws:endpoint
id="nodeSvc"
implementor="#nodeSvcImpl"
address="/NodeSvc">
</jaxws:endpoint>



我爱佛_ 2007-11-01 17:38 发表评论
]]>
在CXF中用JAXB数据l定支持HashMapcdhttp://www.aygfsteel.com/alwayscy/archive/2007/10/29/156723.html我爱佛_我爱佛_Mon, 29 Oct 2007 08:41:00 GMThttp://www.aygfsteel.com/alwayscy/archive/2007/10/29/156723.htmlhttp://www.aygfsteel.com/alwayscy/comments/156723.htmlhttp://www.aygfsteel.com/alwayscy/archive/2007/10/29/156723.html#Feedback4http://www.aygfsteel.com/alwayscy/comments/commentRss/156723.htmlhttp://www.aygfsteel.com/alwayscy/services/trackbacks/156723.html有了转换器这个工P我们可以在SOAP的JAXBl定里支持各UJAVA的COLLECTIONcdQ以及自定义cdQ打破了SOAP原始支持cd的限制?nbsp; 阅读全文

我爱佛_ 2007-10-29 16:41 发表评论
]]>
CXFQ咋d一点呢Q?Q箋Q已解决Q?/title><link>http://www.aygfsteel.com/alwayscy/archive/2007/08/23/138820.html</link><dc:creator>我爱佛_</dc:creator><author>我爱佛_</author><pubDate>Thu, 23 Aug 2007 06:13:00 GMT</pubDate><guid>http://www.aygfsteel.com/alwayscy/archive/2007/08/23/138820.html</guid><wfw:comment>http://www.aygfsteel.com/alwayscy/comments/138820.html</wfw:comment><comments>http://www.aygfsteel.com/alwayscy/archive/2007/08/23/138820.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/alwayscy/comments/commentRss/138820.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/alwayscy/services/trackbacks/138820.html</trackback:ping><description><![CDATA[?a href="http://www.aygfsteel.com/alwayscy/archive/2007/08/07/135074.html">上一文?/a>中的问题Q今天又再试了下Q居然解决了Q看来把遇到问题放一放是有好处的?br><br>W一Q是要用对CXF的库Q在一行代码未变的情况下,只要使用最新的库。看来在最新库里解决了数组问题Q?br>2.1-incubator-SNAPSHOT<br>没问题Q如果是用:<br>2.0-incubator<br>׃出现上篇文章的情c我使用MAVEN2Q就写成Q?br> <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.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">      </span><span style="COLOR: #008000"><!--</span><span style="COLOR: #008000">for cxf</span><span style="COLOR: #008000">--></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">org.apache.cxf</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">cxf-rt-frontend-jaxws</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">2.1-incubator-SNAPSHOT</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #008000"><!--</span><span style="COLOR: #008000"> version>2.0-incubator</version</span><span style="COLOR: #008000">--></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">org.apache.cxf</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">cxf-rt-transports-http</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">2.1-incubator-SNAPSHOT</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">org.apache.cxf</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">groupId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">cxf-rt-databinding-aegis</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">artifactId</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000">2.1-incubator-SNAPSHOT</span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">version</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">dependency</span><span style="COLOR: #0000ff">></span></div> <br><br>W二Q对SOAP::Lite的改变,SOAP::Lite不支持doc/literalQ但通过阅读<br>"NET-based Web Service Using the SOAP::Lite Perl Library". <br>我的上篇文章有链接,我写的PERLE序在某些情况下依然不行?br>q次再加了两处改动后可以了Q(注意QCXF里不要用aegisDatabindingQ用默认的即可)<br> <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.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$soap</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Lite<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> uri(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://magic.nms.exchangebit.com/</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> on_action( </span><span style="COLOR: #0000ff">sub</span><span style="COLOR: #000000">{ </span><span style="COLOR: #0000ff">join</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">/</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://www.alfredbr.com</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$_</span><span style="COLOR: #000000">[</span><span style="COLOR: #800000">1</span><span style="COLOR: #000000">] })<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> proxy(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://127.0.0.1:8080/ebnms/NotifyService</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>           </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">autotype(</span><span style="COLOR: #800000">0</span><span style="COLOR: #000000">);</span></div> <br><br>其中的autotype(0)非常重要。另外一处改动是Q程序中的根变量名改?arg0"Q即与WSDL中定义一致?br>实验发现Q带不带attr中的xmlns都可以。完整代码如下:<br> <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.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">use</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Lite ( </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">trace </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> all</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> maptype </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> {} );<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$soap</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Lite<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> uri(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://magic.nms.exchangebit.com/</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> on_action( </span><span style="COLOR: #0000ff">sub</span><span style="COLOR: #000000">{ </span><span style="COLOR: #0000ff">join</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">/</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://www.alfredbr.com</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$_</span><span style="COLOR: #000000">[</span><span style="COLOR: #800000">1</span><span style="COLOR: #000000">] })<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000"> proxy(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://127.0.0.1:8080/ebnms/NotifyService</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>           </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">autotype(</span><span style="COLOR: #800000">0</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">$soap->sendAlarmString ("good");<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>#$soap->sendAlarm (SOAP::Data->name(arg0=>{devName=>"hehe", devIp=>"ip1"}));</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>{</span><span style="COLOR: #008000">#</span><span style="COLOR: #008000"> call send alarm</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">   $header,</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">       SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(arg0 </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> goodhehe) <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    );<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ns1:sendAlarmString</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">attr({</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">xmlns:ns1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">http://magic.nms.exchangebit.com/</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">});<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$soap</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">call(</span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\nsend string alarm result:\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">fault)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">faultstring;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">result;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\nn</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>{</span><span style="COLOR: #008000">#</span><span style="COLOR: #008000"> call send dev alarm</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(arg0</span><span style="COLOR: #000000">=></span><span style="COLOR: #000000">{devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}));<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">sendAlarm</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">#</span><span style="COLOR: #008000">       ->attr({"xmlns:ns1" => 'http://magic.nms.exchangebit.com/'});</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$soap</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">call(</span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\nsend string alarm result:\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">fault)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">faultstring;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">result;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\n\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>{</span><span style="COLOR: #008000">#</span><span style="COLOR: #008000"> call send arr alarm</span><span style="COLOR: #008000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(arg0 </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> [<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip1</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       {devName</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">hehe2</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"> devIp</span><span style="COLOR: #000000">=></span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ip2</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">}])<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    );<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> SOAP</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">Data</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">name(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">sendAlarmArr</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$soap</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">call(</span><span style="COLOR: #800080">$method</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=></span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@params</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\nsend string alarm result:\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">fault)<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">faultstring;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">my</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">@a</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> @{</span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">result</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">{item}};<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       </span><span style="COLOR: #0000ff">foreach</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">$i</span><span style="COLOR: #000000"> (</span><span style="COLOR: #800080">@a</span><span style="COLOR: #000000">) {<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>               </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">ele: $i->{devName}, $i->{devIp}\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>       }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    }<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff">print</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="FONT-WEIGHT: bold; COLOR: #000000">\n\n</span><span style="FONT-WEIGHT: bold; COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>}</span></div> <img src ="http://www.aygfsteel.com/alwayscy/aggbug/138820.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/alwayscy/" target="_blank">我爱佛_</a> 2007-08-23 14:13 <a href="http://www.aygfsteel.com/alwayscy/archive/2007/08/23/138820.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CXFQ咋d一点呢Q?/title><link>http://www.aygfsteel.com/alwayscy/archive/2007/08/07/135074.html</link><dc:creator>我爱佛_</dc:creator><author>我爱佛_</author><pubDate>Tue, 07 Aug 2007 13:39:00 GMT</pubDate><guid>http://www.aygfsteel.com/alwayscy/archive/2007/08/07/135074.html</guid><wfw:comment>http://www.aygfsteel.com/alwayscy/comments/135074.html</wfw:comment><comments>http://www.aygfsteel.com/alwayscy/archive/2007/08/07/135074.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/alwayscy/comments/commentRss/135074.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/alwayscy/services/trackbacks/135074.html</trackback:ping><description><![CDATA[最q想用PERL通过SOAP与JAVA通信Q想CXFIREQ现在叫CXF提供的服务。但L差一Ҏ功?br><br>W一步,<br>׃用了SPRINGQ所以最先看了这文章:<a title="Writing a service with Spring" ><u><font color=#0000ff>Writing a service with Spring</font></u></a> <br>服务是徏成功了,PERL和JAVA是可以正帔R信了,详见<a href="http://www.aygfsteel.com/alwayscy/archive/2007/08/03/134343.html">上篇文章</a><br>可是CXF自己的CLIENT生成代码却访?#8220;自定义结构数l?#8221;的函C成功Q?br> public List<DeviceValue> sendAlarmArr (List<DeviceValue> arr);<br><br>W二步,<br>左试双不成功,甚至去试了Axis2Q但那个生成的WSDL把上面的l构变成AnyTypeQ估计不寏V?br>又回来,看了<a >Aegisl定</a>Q我q找到将它用到SPRING里的ҎQ?br> <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.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">beans </span><span style="COLOR: #ff0000">xmlns</span><span style="COLOR: #0000ff">="http://www.springframework.org/schema/beans"</span><span style="COLOR: #ff0000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> xmlns:xsi</span><span style="COLOR: #0000ff">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="COLOR: #ff0000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> xmlns:jaxws</span><span style="COLOR: #0000ff">="http://cxf.apache.org/jaxws"</span><span style="COLOR: #ff0000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> xsi:schemaLocation</span><span style="COLOR: #0000ff">="<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">import </span><span style="COLOR: #ff0000">resource</span><span style="COLOR: #0000ff">="classpath:META-INF/cxf/cxf.xml"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">import </span><span style="COLOR: #ff0000">resource</span><span style="COLOR: #0000ff">="classpath:META-INF/cxf/cxf-extension-soap.xml"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top> </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">import </span><span style="COLOR: #ff0000">resource</span><span style="COLOR: #0000ff">="classpath:META-INF/cxf/cxf-servlet.xml"</span><span style="COLOR: #ff0000"> </span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>   </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">bean </span><span style="COLOR: #ff0000">id</span><span style="COLOR: #0000ff">="serviceClass"</span><span style="COLOR: #ff0000"> class</span><span style="COLOR: #0000ff">="com.exchangebit.nms.magic.NotifyServiceImpl"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>  <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">bean </span><span style="COLOR: #ff0000">id</span><span style="COLOR: #0000ff">="aegisDatabinding"</span><span style="COLOR: #ff0000"> class</span><span style="COLOR: #0000ff">="org.apache.cxf.aegis.databinding.AegisDatabinding"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>          <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">bean </span><span style="COLOR: #ff0000">id</span><span style="COLOR: #0000ff">="serviceFactory"</span><span style="COLOR: #ff0000"> class</span><span style="COLOR: #0000ff">="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">property </span><span style="COLOR: #ff0000">name</span><span style="COLOR: #0000ff">="dataBinding"</span><span style="COLOR: #ff0000"> ref</span><span style="COLOR: #0000ff">="aegisDatabinding"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">bean</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">bean </span><span style="COLOR: #ff0000">id</span><span style="COLOR: #0000ff">="serverBeanFactory"</span><span style="COLOR: #ff0000"> class</span><span style="COLOR: #0000ff">="org.apache.cxf.frontend.ServerFactoryBean"</span><span style="COLOR: #ff0000"> init-method</span><span style="COLOR: #0000ff">="create"</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">property </span><span style="COLOR: #ff0000">name</span><span style="COLOR: #0000ff">="address"</span><span style="COLOR: #ff0000"> value</span><span style="COLOR: #0000ff">="/NotifyService"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">property </span><span style="COLOR: #ff0000">name</span><span style="COLOR: #0000ff">="bindingId"</span><span style="COLOR: #ff0000"> value</span><span style="COLOR: #0000ff">="http://schemas.xmlsoap.org/soap/"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">property </span><span style="COLOR: #ff0000">name</span><span style="COLOR: #0000ff">="serviceBean"</span><span style="COLOR: #ff0000"> ref</span><span style="COLOR: #0000ff">="serviceClass"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">property </span><span style="COLOR: #ff0000">name</span><span style="COLOR: #0000ff">="serviceFactory"</span><span style="COLOR: #ff0000"> ref</span><span style="COLOR: #0000ff">="serviceFactory"</span><span style="COLOR: #0000ff">/></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">bean</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>    </span><span style="COLOR: #0000ff"><</span><span style="COLOR: #800000">jaxws:endpoint <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>      </span><span style="COLOR: #ff0000">id</span><span style="COLOR: #0000ff">="notifyService"</span><span style="COLOR: #ff0000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>      implementor</span><span style="COLOR: #0000ff">="com.exchangebit.nms.magic.NotifyServiceImpl"</span><span style="COLOR: #ff0000"> <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>      address</span><span style="COLOR: #0000ff">="/NotifyService"</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>         </span><span style="COLOR: #008000"><!--</span><span style="COLOR: #008000">jaxws:serviceFactory><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>            <ref bean="serviceFactory"/><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>         </jaxws:serviceFactory</span><span style="COLOR: #008000">--></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>     </span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">jaxws:endpoint</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>   <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff"></</span><span style="COLOR: #800000">beans</span><span style="COLOR: #0000ff">></span><span style="COLOR: #000000"><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top></span></div> <br>其实Q跟前一UJAX-WS的方式{换非常简单,把其中的注释L是Aegisl定Q注释掉是JAX-WS?br>客户端没有在SPRING里试成功Q但写代码也相当单,Aegis真好Q?br> <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.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">        getBean (</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">notifyClient</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        <br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        ClientProxyFactoryBean factory </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> ClientProxyFactoryBean();<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        factory.setServiceClass(NotifyService.</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        factory.setAddress(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">http://127.0.0.1:8080/ebnms/NotifyService</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        factory.getServiceFactory().setDataBinding(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> AegisDatabinding());<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        NotifyService client </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (NotifyService) factory.create();<br><img src="http://www.aygfsteel.com/Images/OutliningIndicators/None.gif" align=top>        DoTest (client);</span></div> <p><br>q次Q到是CXF的SERVER和CLIENT都可以正帔R信了。但我不说也知道啦,PERL又出问题?</p> <p> </p> W三步,<br>又进一步搜Q才知道Document, Literal, RPC, Encoding对SOAP消息的媄响,<a >q篇文章</a>(<a >中文?/a>)相当?<br>大义是RPC/Encoding方法名U放入了operation节中Qƈ且消息里含有cd信息Q不方便验?br>而Document/Literal通过增加WSDL复杂度,方法名、参数类型全部放入了types一节,方便了处理?br>而SOAP::Lite只支持RPC/Encoding的方式,但也有办法让它Ş成Doc/Lit的消息:<a >点这?/a>?br>但,q种Ҏ只支持JAX-WS的服务,Aegis的PERL׃出错了?br><br>所以,不管用哪U要么JAVA的CLIENT和SERVER通信有问题,不然是把PERL拒之门外。我怀疑是不是CXF的JAX-WS的数l处理有问题Q不然AegisZ不出错?另外QAegis对PERL的消息不够宽容,本已是Doc/Lit格式Q只是带有TYPE信息也会出错?br>不知如何解,先记在此Q以后回q头来再研究了? <img src ="http://www.aygfsteel.com/alwayscy/aggbug/135074.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/alwayscy/" target="_blank">我爱佛_</a> 2007-08-07 21:39 <a href="http://www.aygfsteel.com/alwayscy/archive/2007/08/07/135074.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>清晰快捷的XML/SOAP/WSDL学习材料(tutorials)http://www.aygfsteel.com/alwayscy/archive/2007/07/10/129260.html我爱佛_我爱佛_Tue, 10 Jul 2007 02:25:00 GMThttp://www.aygfsteel.com/alwayscy/archive/2007/07/10/129260.htmlhttp://www.aygfsteel.com/alwayscy/comments/129260.htmlhttp://www.aygfsteel.com/alwayscy/archive/2007/07/10/129260.html#Feedback1http://www.aygfsteel.com/alwayscy/comments/commentRss/129260.htmlhttp://www.aygfsteel.com/alwayscy/services/trackbacks/129260.htmlq几个学习材料非常短精悍,可清晰快L掌握以下几个概念Q方便更深入学习。徏议象我一h接触q或者有疑惑的同学看一下。每个项?0?0分钟可以看完、看懂:

 

XML tutorial:

http://www.w3schools.com/xml/default.asp

 

SOAP tutorial:

http://www.w3schools.com/soap/default.asp

 

WSDL tutorial:

http://www.w3schools.com/wsdl/default.asp

 

WEB Service tutorial:

http://www.w3schools.com/webservices/default.asp

我爱佛_ 2007-07-10 10:25 发表评论
]]>
comet: 服务器推模式通讯http://www.aygfsteel.com/alwayscy/archive/2007/07/03/127931.html我爱佛_我爱佛_Tue, 03 Jul 2007 10:10:00 GMThttp://www.aygfsteel.com/alwayscy/archive/2007/07/03/127931.htmlhttp://www.aygfsteel.com/alwayscy/comments/127931.htmlhttp://www.aygfsteel.com/alwayscy/archive/2007/07/03/127931.html#Feedback0http://www.aygfsteel.com/alwayscy/comments/commentRss/127931.htmlhttp://www.aygfsteel.com/alwayscy/services/trackbacks/127931.htmlDWR2.0的推技术:q里有介l?/a>

comet的实Cl:q里

其中的原理在于维护HTTP长连接,q里有介l?/a>

 

摘录一部分Q说明其原理Q?/p>

PushletZHTTP,q种技术常常用在多媒体视频、通讯应用中,比如QuickTime。与装蝲HTTP面之后马上关闭HTTPq接的做法相反,Pushlet采用HTTP方式将新数据源源不断地推送到clientQ再此期间HTTPq接一直保持打开。有兛_何在Java中实现这UKeep-alive的长q接请参看Sun提供?u>《HTTP Persistent Connection?/a>?u>W3C的《HTTP1.1规范》?br>CZ1
        我们利用HTTP开发一个JSP面Q因为它易于部vQ而且它在web server中也是作为servlet对待的)Q此面在一个定时器循环中不断地发送新的HTML内容lclientQ?pre>
<%
  int i = 1;
    
  try {
    while (true) {
       out.print("<h1>"+(i++)+"</h1>");
       out.flush();
      
       try {
            Thread.sleep(3000);
       } catch (InterruptedException e) {
       out.print("<h1>"+e+"</h1>");
        }
     }
   } catch (Exception e) {
       out.print("<h1>"+e+"</h1>");
   }
%>

        在Pushlet源代码中提供了此面Qexamples/basics/push-html-stream.jspQ。上面的面q不是十分有用,因ؓ在我们刷新页面时Q新内容机械地、持l不断地被添加到面中,而不是server端更新的内容?br>CZ2
        现在让我们步入Pushlet工作机理中一探究竟。通过q行Pushlet的示例源代码Qexamples/basics/ push-js-stream.htmlQ,我们会看到这个每3U刷Cơ的面。那么它是如何实现的呢?
        此示例中包含了三个文Ӟpush-js-stream.html、push-js-stream-pusher.jsp、push-js-stream-display.html?
        其中push-js-stream.html是主框架文gQ它以HTML Frame的Ş式包含其它两个页面?br>        push-js-stream-pusher.jsp是一个JSPQ它执行在server端,此文件内容如下:


  7: <%
  8:   /** Start a line of JavaScript with a function call to parent frame. */
  9:   String jsFunPre = "<script language=JavaScript >parent.push('";
10:  
11:   /** End the line of JavaScript */
12:   String jsFunPost = "')</script> ";
13:  
14:   int i = 1;
15:   try {
16:  
17:     // Every three seconds a line of JavaScript is pushed to the client
18:     while (true) {
19:    
20:        // Push a line of JavaScript to the client
21:        out.print(jsFunPre+"Page "+(i++)+jsFunPost);
22:        out.flush();
23:        
24:        // Sleep three secs
25:        try {
26:             Thread.sleep(3000);
27:        } catch (InterruptedException e) {
28:             // Let client display exception
29:             out.print(jsFunPre+"InterruptedException: "+e+jsFunPost);
30:        }
31:      }
32:    } catch (Exception e) {
33:             // Let client display exception
34:             out.print(jsFunPre+"Exception: "+e+jsFunPost);
35:    }
36: %>

注意在示?和示?中用JSP旉存在一个问题:一些servlet引擎在某个clientd时会“吃掉”IOExceptionQ以至于JSP面永不抛出此异常。所以在q种情况下,面循环会永远执行下去。而这正是Pushlet实现采用servlet的原因之一Q可以捕获到IOException?
        在上面代码的W?1行中可以看到在一个定时器循环Q?U?周期Q中打印了一些HTMLq将它们输出到client览器。请注意Q这里推送的qHTML而是JavascriptQ这样做的意义何在?
        它把cM?lt;script language=JavaScript >parent.push('Page 4')</script>”的一行代码推送到览器;而具有JavaScript引擎的浏览器可以直接执行收到的每一行代码,q调用parent.push()函数。而代码中的Parent便是览器页面中所在Frame的ParentQ也是push-js-stream.html。让我们看看都发生了什么?

<script LANGUAGE="JavaScript">
var pageStart="<HTML><HEAD></HEAD><BODY BGCOLOR=blue TEXT=white><H2>Server pushes: <para>";
var pageEnd="</H2></BODY></HTML>";
  // Callback function with message from server.
  // This function is called from within the hidden JSP pushlet frame
  function push(content) {

    // Refresh the display frame with the content received
    window.frames['displayFrame'].document.writeln(pageStart+content+pageEnd);
    window.frames['displayFrame'].document.close();
  }

</script>



     <!-- frame to display the content pushed by the pushlet -->
    
    
     <!-- Hidden frame with the pushlet that pushes lines of JavaScript-->
    
</FRAMESET>

        可以看到push-js-stream.html中的push()函数被名为pushletFrame的JSP Frame调用Q把传入的参数值写入到displayFrameQ此Frame为push-js-stream-display.htmlQ。这是动态HTML的一个小技巧:使用document对象的writelnҎh某个Frame或者Window的内宏V?br>        于是displayFrame成ؓ了用于显C内容的、真正的视图。displayFrame初始化ؓ黑色背景q显C“wait…”直到来自server的内容被推送过来:

<H1>WAIT...</H1>

        q便是Pushlet的基本做法:我们从servletQ或者从CZ中的JSPQ把JavaScript代码作ؓHTTP推送到览器。这些代码被览器的JavaScript引擎解释q完成一些有的工作。于是便L地完成了从server端的Java到浏览器中的JavaScript的回调?br>        上面的示例展CZPushlet原理Q但q里存在一些等待解决的问题和需要增ȝҎ。于是我建立了一个小型的server端Pushlet框架Q其cȝ构图表将会展C在下面Q,d了一些用在client中的JavaScript库。由于client需要依赖更多的DHTMLҎ(比如LayersQ,我们首先粗略地温习一?u>DHTML知识。示例代码见examples/dhtml?img src ="http://www.aygfsteel.com/alwayscy/aggbug/127931.html" width = "1" height = "1" />

我爱佛_ 2007-07-03 18:10 发表评论
]]>
վ֩ģ壺 | | | | | ˴| | | ӡ| ˶| | | | | | Զ| ɽ| | | | ־| | | | | | | | ֱ| | | ½| ǿ| Դ| ԭ| | Դ| ̫| ߮| ɽ| |