﻿<?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-肆 无 忌 惮 德 、 无 视 一 切</title><link>http://www.blogjava.net/tianchijiaozi/</link><description>做个有人类责任感的人</description><language>zh-cn</language><lastBuildDate>Wed, 15 Apr 2026 12:00:15 GMT</lastBuildDate><pubDate>Wed, 15 Apr 2026 12:00:15 GMT</pubDate><ttl>60</ttl><item><title>hibernate 部分注解--Formula</title><link>http://www.blogjava.net/tianchijiaozi/archive/2014/12/03/420954.html</link><dc:creator>橴Sè单纯</dc:creator><author>橴Sè单纯</author><pubDate>Wed, 03 Dec 2014 03:20:00 GMT</pubDate><guid>http://www.blogjava.net/tianchijiaozi/archive/2014/12/03/420954.html</guid><wfw:comment>http://www.blogjava.net/tianchijiaozi/comments/420954.html</wfw:comment><comments>http://www.blogjava.net/tianchijiaozi/archive/2014/12/03/420954.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tianchijiaozi/comments/commentRss/420954.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianchijiaozi/services/trackbacks/420954.html</trackback:ping><description><![CDATA[<p style="color: #333333; font-family: Arial; font-size: 14.4444446563721px; line-height: 26px; background-color: #ffffff;"></p><div>d1:为自定义查询</div><p style="color: #333333; font-family: Arial; font-size: 14.4444446563721px; line-height: 26px; background-color: #ffffff;">2:使用样例<br /></p><div>@Formula("(select org.org_Name from Fw_Org org where org.id= org_Id)")<div><span style="white-space: pre;">	</span>public String getOrgName() {</div><div><span style="white-space: pre;">		</span>return orgName;</div><div><span style="white-space: pre;">	</span>}</div><div></div><div><span style="white-space: pre;">	</span>public void setOrgName(String orgName) {</div><div><span style="white-space: pre;">		</span>this.orgName = orgName;</div><div><span style="white-space: pre;">	</span>}<br />控制台打印的sql文如下<br /><div>(select</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; org.org_Name&nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; from</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Fw_Org org&nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; where</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; org.id= this_.org_Id) as formula0_0_&nbsp;</div>3：注意事项<br />3.1：@Formula<span style="color: #333333; font-family: arial; font-size: 13px; line-height: 20.0200004577637px; background-color: #ffffff;">这个注解不能和javax.persistence.Transient这个注解一起用。<br />3</span>.<span style="color: #333333; font-family: arial; font-size: 13px; line-height: 20.0200004577637px; background-color: #ffffff;">2：使用</span>@Formula的时候，在本entity中的其他注解要么全部在方法上，要么全部在变量上。<br />3.3：@Formula中的sql文会直接解析到查询中，即语法为原生sql语法。</div></div><p style="color: #333333; font-family: Arial; font-size: 14.4444446563721px; line-height: 26px; background-color: #ffffff;"></p><img src ="http://www.blogjava.net/tianchijiaozi/aggbug/420954.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianchijiaozi/" target="_blank">橴Sè单纯</a> 2014-12-03 11:20 <a href="http://www.blogjava.net/tianchijiaozi/archive/2014/12/03/420954.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>axis2 WebService的发布与调用</title><link>http://www.blogjava.net/tianchijiaozi/archive/2013/03/15/396452.html</link><dc:creator>橴Sè单纯</dc:creator><author>橴Sè单纯</author><pubDate>Fri, 15 Mar 2013 02:42:00 GMT</pubDate><guid>http://www.blogjava.net/tianchijiaozi/archive/2013/03/15/396452.html</guid><wfw:comment>http://www.blogjava.net/tianchijiaozi/comments/396452.html</wfw:comment><comments>http://www.blogjava.net/tianchijiaozi/archive/2013/03/15/396452.html#Feedback</comments><slash:comments>17</slash:comments><wfw:commentRss>http://www.blogjava.net/tianchijiaozi/comments/commentRss/396452.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianchijiaozi/services/trackbacks/396452.html</trackback:ping><description><![CDATA[1：准备：<br />&nbsp;&nbsp;&nbsp;&nbsp;JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk6downloads-1902814.html<br />
&nbsp; &nbsp; eclipse:http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR2/eclipse-jee-juno-SR2-win32.zip
<div>&nbsp;&nbsp;&nbsp;&nbsp;tomcat:http://tomcat.apache.org/download-60.cgi<br />
&nbsp;&nbsp;&nbsp;&nbsp;axis2:http://axis.apache.org/axis2/java/core/download.cgi<br />&nbsp; &nbsp; eclipse的官方提供的axis插件工具，可以打包aar文件和生成客户端调用代码:http://axis.apache.org/axis2/java/core/tools/index.html<br /><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;其中的Service Archive Wizard - Eclipse Plug-in和Code Generator Wizard - Eclipse Plug-in<br />下载完成的软件如图1.1</p><div><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/软件列表.png" border="0" alt="" width="424" height="124" />图1.1</div>
2：配置环境：<br />
&nbsp;&nbsp;&nbsp;&nbsp;2.1:配置java环境变量（不赘述）。<br />
&nbsp;&nbsp;&nbsp;&nbsp;2.1:eclipse中axis2环境配置：Window-&gt;Perferences-&gt;Web Services-&gt;Axis2 perferences-&gt;Axis2 Runtime-&gt;Axis2 Runtime location,Browse选择解压axis2-1.6.2-bin.zip得到的axis2-1.6.2文件目录。如图2.1。<br />
&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/axis2配置.png" width="749" height="575" alt="" />图2.1<br />&nbsp;&nbsp;&nbsp;&nbsp;2.2：安装插件：解压axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip，把得到的两个jar包放入eclipse目录下的\plugins\中，重启eclipse。<br />&nbsp;&nbsp;&nbsp;&nbsp;2.3：配置tomcat:解压apache-tomcat-6.0.36-windows-x64.zip（不赘述）。<br />
&nbsp;&nbsp;&nbsp;&nbsp;2.4：eclipse中tomcat配置：Window-&gt;Perferences-&gt;Server-&gt;Runtime Environments添加。<br />
3：发布axis2：<br />
&nbsp; &nbsp; 3.1：解压axis2-1.6.2-war.zip获得axis2.war并把它放到tomcat解压目录的webapps文件夹下，启动tomcat，浏览器中输入http://localhost:8080/axis2/，出现图3.1，说明配置成功。<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径2222.png" border="0" alt="" width="996" height="324" />图3.1<br />&nbsp; &nbsp; 3.2：用eclipse的axis2插件发布web服务。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.1&nbsp;&nbsp;&nbsp;&nbsp;在eclipse中new一个Dynamic Web Project，取名webserviceService。编写一个简单的webService服务器代码<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">1</span>&nbsp;<span style="color: #0000FF; ">package</span>&nbsp;org.web.service;<br /><span style="color: #008080; ">2</span>&nbsp;<br /><span style="color: #008080; ">3</span>&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;HelloWorldService&nbsp;{<br /><span style="color: #008080; ">4</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;String&nbsp;sayHello(String&nbsp;name){<br /><span style="color: #008080; ">5</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;"Hello,"&nbsp;+&nbsp;name;<br /><span style="color: #008080; ">6</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">7</span>&nbsp;}<br /><span style="color: #008080; ">8</span>&nbsp;</div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.2 &nbsp; &nbsp;在eclipse的空白workspace处，右键new-&gt;Other,在弹出的对话框中，找到Axis2 Service Archiver,双击-&gt;选择HelloWorldService所在项目的class路径，如图3.2<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径.png" border="0" alt="" width="601" height="177" />图3.2<br />next-&gt;选中skip WSDL,Next-&gt;什么都不填NEXT-&gt;选中Generate the service xml automatically,NEXT-&gt;<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径21.png" border="0" alt="" width="606" height="468" />图3.3<br />如如图3.3填写<span style="font-size: 13px; background-color: #eeeeee;">HelloWorldService类的全路径，点击load，在下面的Method表中出现sayHello说明load成功，点击NEXT-&gt;</span><br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径211.png" border="0" alt="" width="606" height="468" />图3.4<br />&nbsp;&nbsp;&nbsp;&nbsp;填写Output file location，点击Finish，如图3.4。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.2 &nbsp; &nbsp;右键点击webServiceService项目，刷新。出现my_service.aar文件，如图3.5。<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径2111.png" border="0" alt="" width="305" height="167" />图3.5<br />&nbsp; &nbsp; 把此aar文件放到%tomcat_home%\webapps\axis2\WEB-INF\services下。浏览器中输入http://localhost:8080/axis2/services/HelloWorldService?wsdl，出现图3.6，说明发布成功。<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/class路径33.png" border="0" alt="" width="938" height="467" />图3.6<br />4：用eclipse的Web Service Client生成客户端调用代码。<br />&nbsp;&nbsp;&nbsp;&nbsp;4.1：在eclipse的空白workspace处右键new-&gt;Other-&gt;Web services-&gt;Web Service Client,选中，点击NEXT-&gt;出现图4.1<img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/webserviceclient1.png" border="0" alt="" width="529" height="508" />图4.1<br />service definition填发布好的wsdl路径http://localhost:8080/axis2/services/HelloWorldService?wsdl，Client type默认，下面的下滑快拉到最上面，点击Server runtime：Tomcat v6.0 Server出现图4.2：</div><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/webserviceclient2.png" border="0" alt="" width="560" height="468" />图4.2<br />在Server runtime中选择默认，Web service runtime选择Apache Axis2，点击Ok，返回图4.1，点击Client project：webServiceClient，出现图4.3<img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/webserviceclient3.png" border="0" alt="" width="335" height="276" />图4.3<br />在Client project的下拉列表中选择客户端代码存放的项目，本例选择webServiceClient。点击OK，返回图4.1，点击NEXT，进入下一个环节，然后点击Finish。<br />,<img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/webserviceclient4.png" border="0" alt="" width="343" height="406" />图4.4<br />如图4.4，在src的source folder下出现org.web.service包，下面有HelloWorldServiceCallBackHandler.java和HelloWorldServiceStub.java文件，Web App Libraries也有更新，在WebContent目录下也出现axis2-web文件夹，以及WEB-INF等的更新。<br />&nbsp;&nbsp;&nbsp;&nbsp;4.2：写webService调用代码。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在webServiceClient项目中新建一个客户端测试文件如下：<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<span style="color: #0000FF; ">package</span>&nbsp;org.web.client;<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;3</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;java.rmi.RemoteException;<br /><span style="color: #008080; ">&nbsp;4</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;org.web.service.HelloWorldServiceStub;<br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;org.web.service.HelloWorldServiceStub.SayHelloResponse;<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;HelloWorldClient&nbsp;{<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;<br /><span style="color: #008080; ">10</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008000; ">/**</span><span style="color: #008000; "><br /></span><span style="color: #008080; ">11</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080; ">@param</span><span style="color: #008000; ">&nbsp;args<br /></span><span style="color: #008080; ">12</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080; ">@throws</span><span style="color: #008000; ">&nbsp;RemoteException&nbsp;<br /></span><span style="color: #008080; ">13</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">*/</span><br /><span style="color: #008080; ">14</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">static</span>&nbsp;<span style="color: #0000FF; ">void</span>&nbsp;main(String[]&nbsp;args)&nbsp;<span style="color: #0000FF; ">throws</span>&nbsp;RemoteException&nbsp;{<br /><span style="color: #008080; ">15</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;target&nbsp;=&nbsp;"http://localhost:8080/axis2/services/HelloWorldService";<br /><span style="color: #008080; ">16</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HelloWorldServiceStub&nbsp;stub&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;HelloWorldServiceStub(target);<br /><span style="color: #008080; ">17</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;sayHello&nbsp;为webService提供参数</span><span style="color: #008000; "><br /></span><span style="color: #008080; ">18</span>&nbsp;<span style="color: #008000; "></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HelloWorldServiceStub.SayHello&nbsp;sayHello&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;HelloWorldServiceStub.SayHello();<br /><span style="color: #008080; ">19</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sayHello.setName("jackii");<br /><span style="color: #008080; ">20</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SayHelloResponse&nbsp;eur&nbsp;=&nbsp;stub.sayHello(sayHello);<br /><span style="color: #008080; ">21</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;returnVal&nbsp;=&nbsp;eur.get_return();<br /><span style="color: #008080; ">22</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(returnVal);<br /><span style="color: #008080; ">23</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">24</span>&nbsp;<br /><span style="color: #008080; ">25</span>&nbsp;}</div>运行上面代码Run As-&gt;Java Application,输出：<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->Hello,jackii</div>说明调用成功。<br />5：参考文档http://wenku.baidu.com/view/12501ed7195f312b3169a54b.html<br />6：服务端接收的参数为javaBean，返回list样例：<br />&nbsp;&nbsp;&nbsp;&nbsp;6.1：创建服务。新建User.java<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<span style="color: #0000FF; ">package</span>&nbsp;org.web.service;<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;3</span>&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;User&nbsp;{<br /><span style="color: #008080; ">&nbsp;4</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">private</span>&nbsp;String&nbsp;id;<br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">private</span>&nbsp;String&nbsp;name;<br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;String&nbsp;getId()&nbsp;{<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;id;<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">void</span>&nbsp;setId(String&nbsp;id)&nbsp;{<br /><span style="color: #008080; ">10</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">this</span>.id&nbsp;=&nbsp;id;<br /><span style="color: #008080; ">11</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">12</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;String&nbsp;getName()&nbsp;{<br /><span style="color: #008080; ">13</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;name;<br /><span style="color: #008080; ">14</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">15</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">void</span>&nbsp;setName(String&nbsp;name)&nbsp;{<br /><span style="color: #008080; ">16</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">this</span>.name&nbsp;=&nbsp;name;<br /><span style="color: #008080; ">17</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">18</span>&nbsp;}<br /><span style="color: #008080; ">19</span>&nbsp;</div><div>ListService.java<br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<span style="color: #0000FF; ">package</span>&nbsp;org.web.service;<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;3</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;java.util.ArrayList;<br /><span style="color: #008080; ">&nbsp;4</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;java.util.List;<br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;ListService&nbsp;{<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;List&lt;User&gt;&nbsp;getUserList(User&nbsp;user){<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&lt;User&gt;&nbsp;returnList&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;ArrayList&lt;User&gt;();<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returnList.add(user);<br /><span style="color: #008080; ">10</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">for</span>(<span style="color: #0000FF; ">int</span>&nbsp;i=0;i&lt;3;i++){<br /><span style="color: #008080; ">11</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User&nbsp;user1&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;User();<br /><span style="color: #008080; ">12</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user1.setId("00"+i);<br /><span style="color: #008080; ">13</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user1.setName("jack00"+i);<br /><span style="color: #008080; ">14</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returnList.add(user1);<br /><span style="color: #008080; ">15</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">16</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;returnList;<br /><span style="color: #008080; ">17</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">18</span>&nbsp;}</div></div>文件目录如图6.1：<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/6.1.png" border="0" alt="" width="236" height="102" />图6.1<br />按照3.2说明重新发布服务（图3.4Output File Name重新起个名字）<br />6.2：创建客户端调用代码，步奏同4。得到图6.2所示两个文件ListServiceStub.java和ListServiceCallbackHandler.java<br /><img src="http://www.blogjava.net/images/blogjava_net/tianchijiaozi/6.2.png" border="0" alt="" width="296" height="144" />图6.2<br />创建ListServiceClient.java<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<span style="color: #0000FF; ">package</span>&nbsp;org.web.client;<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;3</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;java.rmi.RemoteException;<br /><span style="color: #008080; ">&nbsp;4</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;org.web.service.ListServiceStub;<br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;org.web.service.ListServiceStub.GetUserListResponse;<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;org.web.service.ListServiceStub.User;<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;ListServiceClient&nbsp;{<br /><span style="color: #008080; ">10</span>&nbsp;<br /><span style="color: #008080; ">11</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008000; ">/**</span><span style="color: #008000; "><br /></span><span style="color: #008080; ">12</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080; ">@param</span><span style="color: #008000; ">&nbsp;args<br /></span><span style="color: #008080; ">13</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080; ">@throws</span><span style="color: #008000; ">&nbsp;RemoteException&nbsp;<br /></span><span style="color: #008080; ">14</span>&nbsp;<span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">*/</span><br /><span style="color: #008080; ">15</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">public</span>&nbsp;<span style="color: #0000FF; ">static</span>&nbsp;<span style="color: #0000FF; ">void</span>&nbsp;main(String[]&nbsp;args)&nbsp;<span style="color: #0000FF; ">throws</span>&nbsp;RemoteException&nbsp;{<br /><span style="color: #008080; ">16</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;target&nbsp;=&nbsp;"http://localhost:8080/axis2/services/ListService";<br /><span style="color: #008080; ">17</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListServiceStub&nbsp;stub&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;ListServiceStub(target);<br /><span style="color: #008080; ">18</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListServiceStub.GetUserList&nbsp;getUserList0&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;ListServiceStub.GetUserList();<br /><span style="color: #008080; ">19</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User&nbsp;user&nbsp;=&nbsp;<span style="color: #0000FF; ">new</span>&nbsp;User();<br /><span style="color: #008080; ">20</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.setId("clientTest");<br /><span style="color: #008080; ">21</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.setName("ClientName");<br /><span style="color: #008080; ">22</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getUserList0.setUser(user);<br /><span style="color: #008080; ">23</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GetUserListResponse&nbsp;eur&nbsp;=&nbsp;stub.getUserList(getUserList0);<br /><span style="color: #008080; ">24</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User[]&nbsp;userArray&nbsp;=&nbsp;eur.get_return();<br /><span style="color: #008080; ">25</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">for</span>(<span style="color: #0000FF; ">int</span>&nbsp;i=0;i&lt;userArray.length;i++){<br /><span style="color: #008080; ">26</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("id:"+userArray[i].getId()+"name:"+userArray[i].getName()+"\n");<br /><span style="color: #008080; ">27</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">28</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br /><span style="color: #008080; ">29</span>&nbsp;}</div>以java application方式运行，输出：<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">1</span>&nbsp;id:clientTestname:ClientName<br /><span style="color: #008080; ">2</span>&nbsp;<br /><span style="color: #008080; ">3</span>&nbsp;id:000name:jack000<br /><span style="color: #008080; ">4</span>&nbsp;<br /><span style="color: #008080; ">5</span>&nbsp;id:001name:jack001<br /><span style="color: #008080; ">6</span>&nbsp;<br /><span style="color: #008080; ">7</span>&nbsp;id:002name:jack002</div>说明调用成功。<br /><img src ="http://www.blogjava.net/tianchijiaozi/aggbug/396452.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianchijiaozi/" target="_blank">橴Sè单纯</a> 2013-03-15 10:42 <a href="http://www.blogjava.net/tianchijiaozi/archive/2013/03/15/396452.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>哥，来了</title><link>http://www.blogjava.net/tianchijiaozi/archive/2010/08/26/329999.html</link><dc:creator>橴Sè单纯</dc:creator><author>橴Sè单纯</author><pubDate>Thu, 26 Aug 2010 11:35:00 GMT</pubDate><guid>http://www.blogjava.net/tianchijiaozi/archive/2010/08/26/329999.html</guid><wfw:comment>http://www.blogjava.net/tianchijiaozi/comments/329999.html</wfw:comment><comments>http://www.blogjava.net/tianchijiaozi/archive/2010/08/26/329999.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.blogjava.net/tianchijiaozi/comments/commentRss/329999.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tianchijiaozi/services/trackbacks/329999.html</trackback:ping><description><![CDATA[2010年8月28号19点30分，哥来了，BlogJava你好！<br />
java你好，哥正式进军java世界！
<img src ="http://www.blogjava.net/tianchijiaozi/aggbug/329999.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tianchijiaozi/" target="_blank">橴Sè单纯</a> 2010-08-26 19:35 <a href="http://www.blogjava.net/tianchijiaozi/archive/2010/08/26/329999.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>