﻿<?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-JAVA涂鸦-文章分类-eclipse</title><link>http://www.blogjava.net/rickhunter/category/3462.html</link><description>关于JAVA的点点滴滴</description><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 11:02:39 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 11:02:39 GMT</pubDate><ttl>60</ttl><item><title>eclipse 3.2和wtp 1.5的中文语言包</title><link>http://www.blogjava.net/rickhunter/articles/64709.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Mon, 21 Aug 2006 01:28:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/64709.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/64709.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/64709.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/64709.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/64709.html</trackback:ping><description><![CDATA[eclipse 3.2 中文语言包：<br /><a href="http://download.eclipse.org/eclipse/downloads/drops/L-3.2_Language_Packs-200607121700/index.php">http://download.eclipse.org/eclipse/downloads/drops/L-3.2_Language_Packs-200607121700/index.php</a><br /><br />wtp 1.5 中文语言包<br /><a href="http://download.eclipse.org/webtools/downloads/translations/R1.5/R-1.5.0-200606281455/index.html">http://download.eclipse.org/webtools/downloads/translations/R1.5/R-1.5.0-200606281455/index.html</a><br /><img src ="http://www.blogjava.net/rickhunter/aggbug/64709.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2006-08-21 09:28 <a href="http://www.blogjava.net/rickhunter/articles/64709.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>图解eclipse+myelcipse开发EJB</title><link>http://www.blogjava.net/rickhunter/articles/25484.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Mon, 26 Dec 2005 11:31:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/25484.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/25484.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/25484.html#Feedback</comments><slash:comments>36</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/25484.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/25484.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 在开发ejb之前，我们先得配置好服务器，我使用的是Weblogic9.0中文版，关于Weblogic9.0配置请看我的另一片文章。<a id="viewpost1_TitleUrl" class="singleposttitle" href="/rickhunter/articles/25479.html">配置Weblogic9.0</a><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; 首先需要配置好eclipse。我这里主要说明weblogic的配置。<br>&nbsp;&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb19.jpg" alt="ejb19.jpg" border="0" height="524" width="744">  <br><br>&nbsp;&nbsp;&nbsp; <font color="#ee82ee">注意JDK选择JDK5.0的版本。</font><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; 顺便将weblogic8的配置也贴上来，供大家比较参考<br>&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb18.jpg" alt="ejb18.jpg" border="0" height="524" width="702"><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <font color="#ee82ee">注意weblogic8的JDK版本必须是JDK1.4。</font><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; 接下来就开始我们的开发了。<br><hr size="2" width="100%"><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb1.jpg" alt="ejb1.jpg" border="0" height="500" width="525"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb2.jpg" alt="ejb2.jpg" border="0" height="500" width="525"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb3.jpg" alt="ejb3.jpg" border="0" height="234" width="221"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb4.jpg" alt="ejb4.jpg" border="0" height="274" width="585"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb5.jpg" alt="ejb5.jpg" border="0" height="578" width="525"><br><br>下面就是SessionBean的代码<br><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><img id="Code_Closed_Image" onclick="this.style.display='none'; Code_Closed_Text.style.display='none'; Code_Open_Image.style.display='inline'; Code_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" height="16" width="11"><img id="Code_Open_Image" style="display: none;" onclick="this.style.display='none'; Code_Open_Text.style.display='none'; Code_Closed_Image.style.display='inline'; Code_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" height="16" width="11"><span id="Code_Closed_Text" style="border: 1px solid rgb(128, 128, 128); background-color: rgb(255, 255, 255);">30</span><span id="Code_Open_Text" style="display: none;"><br><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 128, 128);">&nbsp;1</span>&nbsp;<span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);">&nbsp;com.ejb;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;2</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;3</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;java.rmi.RemoteException;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;4</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;5</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.ejb.EJBException;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;6</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.ejb.SessionBean;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;7</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.ejb.SessionContext;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;8</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;9</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">10</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;XDoclet-based&nbsp;session&nbsp;bean.&nbsp;&nbsp;The&nbsp;class&nbsp;must&nbsp;be&nbsp;declared<br></span><span style="color: rgb(0, 128, 128);">11</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;public&nbsp;according&nbsp;to&nbsp;the&nbsp;EJB&nbsp;specification.<br></span><span style="color: rgb(0, 128, 128);">12</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*<br></span><span style="color: rgb(0, 128, 128);">13</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;To&nbsp;generate&nbsp;the&nbsp;EJB&nbsp;related&nbsp;files&nbsp;to&nbsp;this&nbsp;EJB:<br></span><span style="color: rgb(0, 128, 128);">14</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Add&nbsp;Standard&nbsp;EJB&nbsp;module&nbsp;to&nbsp;XDoclet&nbsp;project&nbsp;properties<br></span><span style="color: rgb(0, 128, 128);">15</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Customize&nbsp;XDoclet&nbsp;configuration&nbsp;for&nbsp;your&nbsp;appserver<br></span><span style="color: rgb(0, 128, 128);">16</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Run&nbsp;XDoclet<br></span><span style="color: rgb(0, 128, 128);">17</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*<br></span><span style="color: rgb(0, 128, 128);">18</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;Below&nbsp;are&nbsp;the&nbsp;xdoclet-related&nbsp;tags&nbsp;needed&nbsp;for&nbsp;this&nbsp;EJB.<br></span><span style="color: rgb(0, 128, 128);">19</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">20</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;@ejb.bean&nbsp;name="HelloWorld"<br></span><span style="color: rgb(0, 128, 128);">21</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;display-name="Name&nbsp;for&nbsp;HelloWorld"<br></span><span style="color: rgb(0, 128, 128);">22</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description="Description&nbsp;for&nbsp;HelloWorld"<br></span><span style="color: rgb(0, 128, 128);">23</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jndi-name="ejb/HelloWorld"<br></span><span style="color: rgb(0, 128, 128);">24</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type="Stateless"<br></span><span style="color: rgb(0, 128, 128);">25</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;view-type="remote"<br></span><span style="color: rgb(0, 128, 128);">26</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">27</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;HelloWorld&nbsp;</span><span style="color: rgb(0, 0, 255);">implements</span><span style="color: rgb(0, 0, 0);">&nbsp;SessionBean&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">28</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">29</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);">&nbsp;The&nbsp;session&nbsp;context&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">30</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;SessionContext&nbsp;context;<br></span><span style="color: rgb(0, 128, 128);">31</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">32</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;HelloWorld()&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">33</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">super</span><span style="color: rgb(0, 0, 0);">();<br></span><span style="color: rgb(0, 128, 128);">34</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成构造函数存根</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">35</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">36</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">37</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">38</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Set&nbsp;the&nbsp;associated&nbsp;session&nbsp;context.&nbsp;The&nbsp;container&nbsp;calls&nbsp;this&nbsp;method&nbsp;<br></span><span style="color: rgb(0, 128, 128);">39</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;after&nbsp;the&nbsp;instance&nbsp;creation.<br></span><span style="color: rgb(0, 128, 128);">40</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">41</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;enterprise&nbsp;bean&nbsp;instance&nbsp;should&nbsp;store&nbsp;the&nbsp;reference&nbsp;to&nbsp;the&nbsp;context&nbsp;<br></span><span style="color: rgb(0, 128, 128);">42</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;object&nbsp;in&nbsp;an&nbsp;instance&nbsp;variable.<br></span><span style="color: rgb(0, 128, 128);">43</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">44</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;This&nbsp;method&nbsp;is&nbsp;called&nbsp;with&nbsp;no&nbsp;transaction&nbsp;context.&nbsp;<br></span><span style="color: rgb(0, 128, 128);">45</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">46</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: rgb(128, 128, 128);">@throws</span><span style="color: rgb(0, 128, 0);">&nbsp;EJBException&nbsp;Thrown&nbsp;if&nbsp;method&nbsp;fails&nbsp;due&nbsp;to&nbsp;system-level&nbsp;error.<br></span><span style="color: rgb(0, 128, 128);">47</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">48</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;setSessionContext(SessionContext&nbsp;newContext)<br></span><span style="color: rgb(0, 128, 128);">49</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">50</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;context&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;newContext;<br></span><span style="color: rgb(0, 128, 128);">51</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">52</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">53</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;ejbRemove()&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException,&nbsp;RemoteException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">54</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成方法存根</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">55</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">56</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">57</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">58</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;ejbActivate()&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException,&nbsp;RemoteException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">59</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成方法存根</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">60</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">61</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">62</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">63</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;ejbPassivate()&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException,&nbsp;RemoteException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">64</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成方法存根</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">65</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">66</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">67</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">68</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">69</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;An&nbsp;example&nbsp;business&nbsp;method<br></span><span style="color: rgb(0, 128, 128);">70</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br></span><span style="color: rgb(0, 128, 128);">71</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@ejb.interface-method&nbsp;view-type&nbsp;=&nbsp;"remote"<br></span><span style="color: rgb(0, 128, 128);">72</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">73</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: rgb(128, 128, 128);">@throws</span><span style="color: rgb(0, 128, 0);">&nbsp;EJBException&nbsp;Thrown&nbsp;if&nbsp;method&nbsp;fails&nbsp;due&nbsp;to&nbsp;system-level&nbsp;error.<br></span><span style="color: rgb(0, 128, 128);">74</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">75</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;String&nbsp;hello()&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">76</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;rename&nbsp;and&nbsp;start&nbsp;putting&nbsp;your&nbsp;business&nbsp;logic&nbsp;here</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">77</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;String(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">HelloEJBWorld!</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br></span><span style="color: rgb(0, 128, 128);">78</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">79</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">80</span>&nbsp;<span style="color: rgb(0, 0, 0);">}<br></span><span style="color: rgb(0, 128, 128);">81</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span></span></div><br>其实就是修改了其中的一个方法：<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 128, 128);">&nbsp;1</span>&nbsp;<span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;2</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;An&nbsp;example&nbsp;business&nbsp;method<br></span><span style="color: rgb(0, 128, 128);">&nbsp;3</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br></span><span style="color: rgb(0, 128, 128);">&nbsp;4</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@ejb.interface-method&nbsp;view-type&nbsp;=&nbsp;"remote"<br></span><span style="color: rgb(0, 128, 128);">&nbsp;5</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;6</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: rgb(128, 128, 128);">@throws</span><span style="color: rgb(0, 128, 0);">&nbsp;EJBException&nbsp;Thrown&nbsp;if&nbsp;method&nbsp;fails&nbsp;due&nbsp;to&nbsp;system-level&nbsp;error.<br></span><span style="color: rgb(0, 128, 128);">&nbsp;7</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;8</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;String&nbsp;hello()&nbsp;</span><span style="color: rgb(0, 0, 255);">throws</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBException&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">&nbsp;9</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;rename&nbsp;and&nbsp;start&nbsp;putting&nbsp;your&nbsp;business&nbsp;logic&nbsp;here</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">10</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;String(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">HelloEJBWorld!</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br></span><span style="color: rgb(0, 128, 128);">11</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div><font color="#ff1493"><u>注意：代码中的解释文字不要删除，因为XDoclet需要。</u></font><br><br>配置属性<br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb6.jpg" alt="ejb6.jpg" border="0" height="488" width="334"><br><br>添加weblogic.jar。我的路径是：bea\weblogic90\server\lib\weblogic.jar<br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb16.jpg" alt="ejb16.jpg" border="0" height="524" width="726"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb7.jpg" alt="ejb7.jpg" border="0" height="548" width="719"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb8.jpg" alt="ejb8.jpg" border="0" height="171" width="220"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb9.jpg" alt="ejb9.jpg" border="0" height="548" width="719"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb10.jpg" alt="ejb10.jpg" border="0" height="548" width="719"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb11.jpg" alt="ejb11.jpg" border="0" height="591" width="220"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb12.jpg" alt="ejb12.jpg" border="0" height="548" width="719"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb13.jpg" alt="ejb13.jpg" border="0" height="546" width="718"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb14.jpg" alt="ejb14.jpg" border="0" height="622" width="600"><br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb15.jpg" alt="ejb15.jpg" border="0" height="348" width="217"><br><br>就下来写EJBTest类：<br><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 128, 128);">&nbsp;1</span>&nbsp;<span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);">&nbsp;com;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;2</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;3</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;java.rmi.RemoteException;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;4</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;java.util.Properties;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;5</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">&nbsp;6</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.ejb.CreateException;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;7</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.naming.Context;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;8</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.naming.InitialContext;<br></span><span style="color: rgb(0, 128, 128);">&nbsp;9</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.naming.NamingException;<br></span><span style="color: rgb(0, 128, 128);">10</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">11</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;com.interfaces.HelloWorld;<br></span><span style="color: rgb(0, 128, 128);">12</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;com.interfaces.HelloWorldHome;<br></span><span style="color: rgb(0, 128, 128);">13</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">14</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;EJBTest&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">15</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">16</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">17</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: rgb(128, 128, 128);">@param</span><span style="color: rgb(0, 128, 0);">&nbsp;args<br></span><span style="color: rgb(0, 128, 128);">18</span>&nbsp;<span style="color: rgb(0, 128, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">*/</span><span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">19</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;main(String[]&nbsp;args)&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">20</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成方法存根</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">21</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Properties&nbsp;properties</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;Properties();<br></span><span style="color: rgb(0, 128, 128);">22</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">weblogic.jndi.WLInitialContextFactory</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br></span><span style="color: rgb(0, 128, 128);">23</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;properties.setProperty(Context.PROVIDER_URL,</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">t3://localhost:7001</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br></span><span style="color: rgb(0, 128, 128);">24</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: rgb(0, 128, 128);">25</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Context&nbsp;context;<br></span><span style="color: rgb(0, 128, 128);">26</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">try</span><span style="color: rgb(0, 0, 0);">&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">27</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;context&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;InitialContext(properties);<br></span><span style="color: rgb(0, 128, 128);">28</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HelloWorldHome&nbsp;hwh</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">(HelloWorldHome)context.lookup(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">ejb/HelloWorld</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br></span><span style="color: rgb(0, 128, 128);">29</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HelloWorld&nbsp;hw</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">hwh.create();<br></span><span style="color: rgb(0, 128, 128);">30</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;s</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">hw.hello();<br></span><span style="color: rgb(0, 128, 128);">31</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(s);<br></span><span style="color: rgb(0, 128, 128);">32</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: rgb(0, 0, 255);">catch</span><span style="color: rgb(0, 0, 0);">&nbsp;(NamingException&nbsp;e)&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">33</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成&nbsp;catch&nbsp;块</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">34</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br></span><span style="color: rgb(0, 128, 128);">35</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: rgb(0, 0, 255);">catch</span><span style="color: rgb(0, 0, 0);">&nbsp;(RemoteException&nbsp;e)&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">36</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成&nbsp;catch&nbsp;块</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">37</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br></span><span style="color: rgb(0, 128, 128);">38</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: rgb(0, 0, 255);">catch</span><span style="color: rgb(0, 0, 0);">&nbsp;(CreateException&nbsp;e)&nbsp;{<br></span><span style="color: rgb(0, 128, 128);">39</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;TODO&nbsp;自动生成&nbsp;catch&nbsp;块</span><span style="color: rgb(0, 128, 0);"><br></span><span style="color: rgb(0, 128, 128);">40</span>&nbsp;<span style="color: rgb(0, 128, 0);"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br></span><span style="color: rgb(0, 128, 128);">41</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">42</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: rgb(0, 128, 128);">43</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: rgb(0, 128, 128);">44</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">45</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br></span><span style="color: rgb(0, 128, 128);">46</span>&nbsp;<span style="color: rgb(0, 0, 0);">}<br></span><span style="color: rgb(0, 128, 128);">47</span>&nbsp;<span style="color: rgb(0, 0, 0);"></span></div><br><hr size="2" width="100%">最后就是看结果了，先启动weblogic，然后运行EJBTest程序。<br><br><img src="http://www.blogjava.net/images/blogjava_net/rickhunter/ejb_myeclipse/ejb17.jpg" alt="ejb17.jpg" border="0" height="203" width="790"><br><br><br><br><br><br><br><br><br><br><br><img src ="http://www.blogjava.net/rickhunter/aggbug/25484.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2005-12-26 19:31 <a href="http://www.blogjava.net/rickhunter/articles/25484.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>怎么样解决myeclipse资源文件中的中文编码问题   转贴自CSDN论坛</title><link>http://www.blogjava.net/rickhunter/articles/16180.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Thu, 20 Oct 2005 10:28:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/16180.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/16180.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/16180.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/16180.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/16180.html</trackback:ping><description><![CDATA[方法一: 编辑玩了后在dos在用jdk自带的native2ascii命令把资源文件转换一下就可以了<br>
<br>
命令为native2ascii 资源文件名 新的资源文件名   <br>
执行完后便会在新的资源文件中看见中文全变成/u...什么了样子~~这样就可以了<br>
<br>
把旧的删掉  新的资源文件改回旧的资源文件名<br>
<br>
方法二:使用插件PropertiesEdit,下载地址: <br>
http://propedit.sourceforge.jp/eclipse/updates/<br>
<br>
方法三: 修改properties的源代码.主要是修改saveConvert()方法和loadConvert()方法，大家可以自己建立一个类，然后把properties类的代码拷贝过来，然后修改这两个方法就可以了。<br>
或者直接将我下面的代码拷贝过去就可以了。<br>
<br>
package xiaotang.util;<br>
import java.util.*;<br>
package xiaotang.util;<br>
<br>
import java.io.IOException;<br>
import java.io.PrintStream;<br>
import java.io.PrintWriter;<br>
import java.io.InputStream;<br>
import java.io.InputStreamReader;<br>
import java.io.BufferedReader;<br>
import java.io.OutputStream;<br>
import java.io.OutputStreamWriter;<br>
import java.io.BufferedWriter;<br>
import java.util.Hashtable;<br>
import java.util.*;<br>
/**<br>
* <br>
* &lt;p&gt;Title: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Description: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Copyright: Copyright (c) 2005&lt;/p&gt; <br>
* <br>
* &lt;p&gt;Company: 哈尔滨商业大学&lt;/p&gt;<br>
* <br>
* @author Onlyfor_love<br>
* @version 1.0<br>
*/<br>
<br>
public class PropertiesExt extends Hashtable {<br>
<br>
private static final long serialVersionUID = 4112578634029874840L;<br>
protected PropertiesExt defaults;<br>
public PropertiesExt() {<br>
this(null);<br>
}<br>
public PropertiesExt(PropertiesExt defaults) {<br>
this.defaults = defaults;<br>
}<br>
public synchronized Object setProperty(String key, String value) {<br>
return put(key, value);<br>
}<br>
<br>
private static final String keyValueSeparators = "=: \t\r\n\f";<br>
<br>
private static final String strictKeyValueSeparators = "=:";<br>
<br>
private static final String specialSaveChars = "=: \t\r\n\f#!";<br>
<br>
private static final String whiteSpaceChars = " \t\r\n\f";<br>
<br>
public synchronized void load(InputStream inStream) throws IOException {<br>
//把所有的8859-1全部换成GBK<br>
BufferedReader in = new BufferedReader(new InputStreamReader(inStream, "GBK"));<br>
while (true) {<br>
// Get next line<br>
String line = in.readLine();<br>
if (line == null)<br>
return;<br>
<br>
if (line.length() &gt; 0) {<br>
<br>
// Find start of key<br>
int len = line.length();<br>
int keyStart;<br>
for (keyStart=0; keyStart&lt;len; keyStart++)<br>
if (whiteSpaceChars.indexOf(line.charAt(keyStart)) == -1)<br>
break;<br>
<br>
// Blank lines are ignored<br>
if (keyStart == len)<br>
continue;<br>
<br>
// Continue lines that end in slashes if they are not comments<br>
char firstChar = line.charAt(keyStart);<br>
if ((firstChar != '#') &amp;&amp; (firstChar != '!')) {<br>
while (continueLine(line)) {<br>
String nextLine = in.readLine();<br>
if (nextLine == null)<br>
nextLine = "";<br>
String loppedLine = line.substring(0, len-1);<br>
// Advance beyond whitespace on new line<br>
int startIndex;<br>
for (startIndex=0; startIndex&lt;nextLine.length(); startIndex++)<br>
if (whiteSpaceChars.indexOf(nextLine.charAt(startIndex)) == -1)<br>
break;<br>
nextLine = nextLine.substring(startIndex,nextLine.length());<br>
line = new String(loppedLine+nextLine);<br>
len = line.length();<br>
}<br>
<br>
// Find separation between key and value<br>
int separatorIndex;<br>
for (separatorIndex=keyStart; separatorIndex&lt;len; separatorIndex++) {<br>
char currentChar = line.charAt(separatorIndex);<br>
if (currentChar == '\\')<br>
separatorIndex++;<br>
else if (keyValueSeparators.indexOf(currentChar) != -1)<br>
break;<br>
}<br>
<br>
// Skip over whitespace after key if any<br>
int valueIndex;<br>
for (valueIndex=separatorIndex; valueIndex&lt;len; valueIndex++)<br>
if (whiteSpaceChars.indexOf(line.charAt(valueIndex)) == -1)<br>
break;<br>
<br>
// Skip over one non whitespace key value separators if any<br>
if (valueIndex &lt; len)<br>
if (strictKeyValueSeparators.indexOf(line.charAt(valueIndex)) != -1)<br>
valueIndex++;<br>
<br>
// Skip over white space after other separators if any<br>
while (valueIndex &lt; len) {<br>
if (whiteSpaceChars.indexOf(line.charAt(valueIndex)) == -1)<br>
break;<br>
valueIndex++;<br>
}<br>
String key = line.substring(keyStart, separatorIndex);<br>
String value = (separatorIndex &lt; len) ? line.substring(valueIndex, len) : "";<br>
<br>
// Convert then store key and value<br>
key = loadConvert(key);<br>
value = loadConvert(value);<br>
put(key, value);<br>
}<br>
}<br>
}<br>
}<br>
<br>
/*<br>
* Returns true if the given line is a line that must<br>
* be appended to the next line<br>
*/<br>
private boolean continueLine(String line) {<br>
int slashCount = 0;<br>
int index = line.length() - 1;<br>
while ((index &gt;= 0) &amp;&amp; (line.charAt(index--) == '\\'))<br>
slashCount++;<br>
return (slashCount % 2 == 1);<br>
}<br>
<br>
/**<br>
* <br>
* &lt;p&gt;Title: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Description: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Copyright: Copyright (c) 2005&lt;/p&gt; <br>
* <br>
* &lt;p&gt;Company: 哈尔滨商业大学&lt;/p&gt;<br>
* <br>
* @author Onlyfor_love<br>
* @version 1.0<br>
*/<br>
private String loadConvert(String theString) {<br>
//该功能主要是将存储的key和value提取出来，因为存储的中文在原来的properties类中被转换成了别的编码<br>
//存储的中文在*.properties文件中以乱码出现<br>
char aChar;<br>
int len = theString.length();<br>
StringBuffer outBuffer = new StringBuffer(len);<br>
//<br>
// for (int x=0; x&lt;len; ) {<br>
// aChar = theString.charAt(x++);<br>
// if (aChar == '\\') {<br>
// aChar = theString.charAt(x++);<br>
// if (aChar == 'u') {<br>
// // Read the xxxx<br>
// int value=0;<br>
// for (int i=0; i&lt;4; i++) {<br>
// aChar = theString.charAt(x++);<br>
// switch (aChar) {<br>
// case '0': case '1': case '2': case '3': case '4':<br>
// case '5': case '6': case '7': case '8': case '9':<br>
// value = (value &lt;&lt; 4) + aChar - '0';<br>
// break;<br>
// case 'a': case 'b': case 'c':<br>
// case 'd': case 'e': case 'f':<br>
// value = (value &lt;&lt; 4) + 10 + aChar - 'a';<br>
// break;<br>
// case 'A': case 'B': case 'C':<br>
// case 'D': case 'E': case 'F':<br>
// value = (value &lt;&lt; 4) + 10 + aChar - 'A';<br>
// break;<br>
// default:<br>
// throw new IllegalArgumentException(<br>
// "Malformed \\uxxxx encoding.");<br>
// }<br>
// }<br>
// outBuffer.append((char)value);<br>
// } else {<br>
// if (aChar == 't') aChar = '\t';<br>
// else if (aChar == 'r') aChar = '\r';<br>
// else if (aChar == 'n') aChar = '\n';<br>
// else if (aChar == 'f') aChar = '\f';<br>
// outBuffer.append(aChar);<br>
// }<br>
// } else<br>
outBuffer.append(theString);<br>
// }<br>
return outBuffer.toString();<br>
}<br>
<br>
/**<br>
* <br>
* &lt;p&gt;Title: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Description: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Copyright: Copyright (c) 2005&lt;/p&gt; <br>
* <br>
* &lt;p&gt;Company: 哈尔滨商业大学&lt;/p&gt;<br>
* <br>
* @author Onlyfor_love<br>
* @version 1.0<br>
*/<br>
<br>
private String saveConvert(String theString, boolean escapeSpace) {<br>
//该功能主要是将存储key和value，因为中文的存储在原来的properties类中被转换成了别的编码<br>
//存储的中文在*.properties文件中以乱码出现<br>
int len = theString.length();<br>
StringBuffer outBuffer = new StringBuffer(len*2);<br>
outBuffer.append(theString);<br>
<br>
// for(int x=0; x&lt;len; x++) {<br>
// char aChar = theString.charAt(x);<br>
// switch(aChar) {<br>
// case ' ':<br>
// if (x == 0 || escapeSpace)<br>
// outBuffer.append('\\');<br>
//<br>
// outBuffer.append(' ');<br>
// break;<br>
// case '\\':outBuffer.append('\\'); outBuffer.append('\\');<br>
// break;<br>
// case '\t':outBuffer.append('\\'); outBuffer.append('t');<br>
// break;<br>
// case '\n':outBuffer.append('\\'); outBuffer.append('n');<br>
// break;<br>
// case '\r':outBuffer.append('\\'); outBuffer.append('r');<br>
// break;<br>
// case '\f':outBuffer.append('\\'); outBuffer.append('f');<br>
// break;<br>
// default:<br>
//<br>
// if ((aChar &lt; 0x0020) || (aChar &gt; 0x007e)) {<br>
// outBuffer.append('\\');<br>
// outBuffer.append('u');<br>
// outBuffer.append(toHex((aChar &gt;&gt; 12) &amp; 0xF));<br>
// outBuffer.append(toHex((aChar &gt;&gt; 8) &amp; 0xF));<br>
// outBuffer.append(toHex((aChar &gt;&gt; 4) &amp; 0xF));<br>
// outBuffer.append(toHex( aChar &amp; 0xF));<br>
// } else {<br>
// if (specialSaveChars.indexOf(aChar) != -1)<br>
// outBuffer.append('\\');<br>
// outBuffer.append(aChar);<br>
// }<br>
// }<br>
// }<br>
return outBuffer.toString();<br>
}<br>
<br>
/**<br>
* Calls the &lt;code&gt;store(OutputStream out, String header)&lt;/code&gt; method<br>
* and suppresses IOExceptions that were thrown.<br>
*<br>
* @deprecated This method does not throw an IOException if an I/O error<br>
* occurs while saving the property list. As of the Java 2 platform v1.2, the preferred<br>
* way to save a properties list is via the &lt;code&gt;store(OutputStream out,<br>
* String header)&lt;/code&gt; method.<br>
*<br>
* @param out an output stream.<br>
* @param header a description of the property list.<br>
* @exception ClassCastException if this &lt;code&gt;Properties&lt;/code&gt; object<br>
* contains any keys or values that are not &lt;code&gt;Strings&lt;/code&gt;.<br>
*/<br>
public synchronized void save(OutputStream out, String header) {<br>
try {<br>
store(out, header);<br>
} catch (IOException e) {<br>
}<br>
}<br>
<br>
public synchronized void store(OutputStream out, String header)<br>
throws IOException<br>
{<br>
BufferedWriter awriter;<br>
awriter = new BufferedWriter(new OutputStreamWriter(out, "GBK"));<br>
if (header != null)<br>
writeln(awriter, "#" + header);<br>
writeln(awriter, "#" + new Date().toString());<br>
for (Enumeration e = keys(); e.hasMoreElements();) {<br>
String key = (String)e.nextElement();<br>
String val = (String)get(key);<br>
key = saveConvert(key, false);<br>
<br>
/* No need to escape embedded and trailing spaces for value, hence<br>
* pass false to flag.<br>
*/<br>
val = saveConvert(val, false);<br>
writeln(awriter, key + "=" + val);<br>
}<br>
awriter.flush();<br>
}<br>
<br>
private static void writeln(BufferedWriter bw, String s) throws IOException {<br>
bw.write(s);<br>
bw.newLine();<br>
}<br>
<br>
public String getProperty(String key) {<br>
Object oval = super.get(key);<br>
String sval = (oval instanceof String) ? (String)oval : null;<br>
return ((sval == null) &amp;&amp; (defaults != null)) ? defaults.getProperty(key) : sval;<br>
}<br>
<br>
public String getProperty(String key, String defaultValue) {<br>
String val = getProperty(key);<br>
return (val == null) ? defaultValue : val;<br>
}<br>
<br>
public Enumeration propertyNames() {<br>
Hashtable h = new Hashtable();<br>
enumerate(h);<br>
return h.keys();<br>
}<br>
<br>
public void list(PrintStream out) {<br>
out.println("-- listing properties --");<br>
Hashtable h = new Hashtable();<br>
enumerate(h);<br>
for (Enumeration e = h.keys() ; e.hasMoreElements() ;) {<br>
String key = (String)e.nextElement();<br>
String val = (String)h.get(key);<br>
if (val.length() &gt; 40) {<br>
val = val.substring(0, 37) + "...";<br>
}<br>
out.println(key + "=" + val);<br>
}<br>
}<br>
<br>
public void list(PrintWriter out) {<br>
out.println("-- listing properties --");<br>
Hashtable h = new Hashtable();<br>
enumerate(h);<br>
for (Enumeration e = h.keys() ; e.hasMoreElements() ;) {<br>
String key = (String)e.nextElement();<br>
String val = (String)h.get(key);<br>
if (val.length() &gt; 40) {<br>
val = val.substring(0, 37) + "...";<br>
}<br>
out.println(key + "=" + val);<br>
}<br>
}<br>
<br>
private synchronized void enumerate(Hashtable h) {<br>
if (defaults != null) {<br>
defaults.enumerate(h);<br>
}<br>
for (Enumeration e = keys() ; e.hasMoreElements() ;) {<br>
String key = (String)e.nextElement();<br>
h.put(key, get(key));<br>
}<br>
}<br>
<br>
private static char toHex(int nibble) {<br>
return hexDigit[(nibble &amp; 0xF)];<br>
}<br>
<br>
/** A table of hex digits */<br>
private static final char[] hexDigit = {<br>
'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'<br>
};<br>
}<br>
<br>
<br>
/////////////////////////////////////////////////////////////////<br>
然后写一个常用的配置文件操作类：<br>
package xiaotang.util;<br>
import java.io.*;<br>
<br>
public class writeToProperty {<br>
private String fileName;<br>
private PropertiesExt prop = new PropertiesExt();<br>
private InputStream fileStream = null;<br>
private OutputStream outStream = null;<br>
/**<br>
*构造函数<br>
* @param fileName 文件名字，包含路径<br>
*/<br>
public writeToProperty(String fileName) {<br>
this.fileName = fileName;<br>
}<br>
<br>
//读取文件，不存在则创建文件<br>
private void readFile() {<br>
try {<br>
File f = new File(fileName);<br>
fileStream = new FileInputStream(f);<br>
prop.load(fileStream);<br>
}<br>
catch (Exception e) {<br>
e.printStackTrace();<br>
}<br>
finally {<br>
try {<br>
if (fileStream != null)<br>
fileStream.close();<br>
}<br>
catch (IOException ex) {<br>
ex.printStackTrace();<br>
}<br>
}<br>
<br>
}<br>
<br>
private void writeFile() {<br>
try {<br>
File f = new File(fileName);<br>
outStream = new FileOutputStream(f);<br>
}<br>
catch (Exception e) {<br>
e.printStackTrace();<br>
}<br>
}<br>
<br>
/**<br>
* 返回指定key的vlaue<br>
* @param key<br>
* @return<br>
*/<br>
public String getValue(String key) {<br>
readFile();<br>
if (key != null &amp;&amp; !key.equals(""))<br>
return prop.getProperty(key);<br>
else<br>
return "";<br>
}<br>
<br>
/**<br>
*返回指定key的vlaue,如果key不存在则返回defaultValue值<br>
* @param key<br>
* @param defaultValue<br>
* @return<br>
*/<br>
public String getValue(String key, String defaultValue) {<br>
if (key != null &amp;&amp; !key.equals(""))<br>
return prop.getProperty(key, defaultValue);<br>
else<br>
return "";<br>
}<br>
<br>
/**<br>
* 设置对应key的数值，如果key存在的覆盖value的数值，如果key不存则创建<br>
* @param key<br>
* @param value<br>
*/<br>
public void setValue(String key, String value) {<br>
readFile();<br>
writeFile();<br>
prop.setProperty(key, value);<br>
try {<br>
prop.store(outStream, "GBK");<br>
}<br>
catch (IOException ex) {<br>
ex.printStackTrace();<br>
}<br>
finally {<br>
try {<br>
outStream.close();<br>
}<br>
catch (IOException ex1) {<br>
ex1.printStackTrace();<br>
}<br>
}<br>
}<br>
}<br>
////////////////////////////////////////////////////////////<br>
接着写一个测试类就可以了：<br>
package xiaotang.util;<br>
<br>
import xiaotang.util.PropertiesExt;<br>
import java.io.*;<br>
/**<br>
* <br>
* &lt;p&gt;Title: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Description: &lt;/p&gt; <br>
* <br>
* &lt;p&gt;Copyright: Copyright (c) 2005&lt;/p&gt; <br>
* <br>
* &lt;p&gt;Company: 哈尔滨商业大学&lt;/p&gt;<br>
* <br>
* @author Onlyfor_love<br>
* @version 1.0<br>
*/<br>
public class PropertyFile {<br>
public static void main(String[] args) {<br>
writeToProperty wt = new writeToProperty("d:\\config1.properties");<br>
wt.setValue("一","我是谁？");<br>
wt.setValue("二","我是陈晓棠");<br>
String one = wt.getValue("一");<br>
String two = wt.getValue("二");<br>
System.out.println(one);<br>
System.out.println(two);<br>
}<br>
<br>
}<br>
回头你再看看你的配置文件，中文依然是中文。<br>
<img src ="http://www.blogjava.net/rickhunter/aggbug/16180.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2005-10-20 18:28 <a href="http://www.blogjava.net/rickhunter/articles/16180.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Eclipse3.1中如何配置Lomboz3.1</title><link>http://www.blogjava.net/rickhunter/articles/13687.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Wed, 21 Sep 2005 14:08:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/13687.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/13687.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/13687.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/13687.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/13687.html</trackback:ping><description><![CDATA[<a href="http://blog.csdn.net/rickhunterchen/archive/2005/09/11/477382.aspx">参考我在csdn上的blog上的文章</a><br><br>
<img src ="http://www.blogjava.net/rickhunter/aggbug/13687.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2005-09-21 22:08 <a href="http://www.blogjava.net/rickhunter/articles/13687.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Eclipse3.1中如何使用Lomboz3.1开发JSP</title><link>http://www.blogjava.net/rickhunter/articles/13686.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Wed, 21 Sep 2005 14:07:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/13686.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/13686.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/13686.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/13686.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/13686.html</trackback:ping><description><![CDATA[<a href="http://blog.csdn.net/rickhunterchen/archive/2005/09/11/477386.aspx">参考我在csdn上的blog上的文章。</a><br><br>
<img src ="http://www.blogjava.net/rickhunter/aggbug/13686.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2005-09-21 22:07 <a href="http://www.blogjava.net/rickhunter/articles/13686.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Eclipse3.1中如何使用Lomboz3.1开发struts</title><link>http://www.blogjava.net/rickhunter/articles/13685.html</link><dc:creator>千山鸟飞绝</dc:creator><author>千山鸟飞绝</author><pubDate>Wed, 21 Sep 2005 14:01:00 GMT</pubDate><guid>http://www.blogjava.net/rickhunter/articles/13685.html</guid><wfw:comment>http://www.blogjava.net/rickhunter/comments/13685.html</wfw:comment><comments>http://www.blogjava.net/rickhunter/articles/13685.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/rickhunter/comments/commentRss/13685.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rickhunter/services/trackbacks/13685.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 虽然现在用IDE开发struts有不少好用的软件，像JB,
myeclipse，但这些都需要Money。虽然用来学习可以使用试用版或者直接使用D版。但在真正开发中可能会遇到一些问题，所以试着用一些免费的
软件为我们服务也不为一件坏事。既然免费，在一些功能上当然抵不上商用软件，但还是能完成大部分工作。<br>
&nbsp;&nbsp;&nbsp; 在eclipse2.0时还有一个easystruts的插件，进入3.0，就找不到简单好用的免费插件了。在网上经常看到有人问是否可以用lomboz开发struts，而回答基本就一个：还是用myeclipse吧。<br>
&nbsp;&nbsp;&nbsp; lomboz没有直接集成struts，因此在使用时，无法像myeclipse那样直观。<br>
&nbsp;&nbsp;&nbsp; 因此，我们先要下一个struts，我下的是struts-1.2.7--比较新的版本。解压到本地文件夹中就可以了。<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; eclipse配置lomboz可参考我相关的文章。<br>
&nbsp;&nbsp;&nbsp; 相关struts请看相关书籍。<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; 1、新建项目: <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap1.jpg" alt="Snap1.jpg" border="0" height="560" width="230"><br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap2.jpg" alt="Snap2.jpg" border="0" height="536" width="658"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap3.jpg" alt="Snap3.jpg" border="0" height="156" width="522"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap4.jpg" alt="Snap4.jpg" border="0" height="357" width="254"><br>
<br>
&nbsp;&nbsp;&nbsp; 2、接着，我们要导入struts了，首先导入后缀名为tld的文件，这些文件在刚刚解压的struts文件下的lib文件夹中。<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap5.jpg" alt="Snap5.jpg" border="0" height="492" width="394"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap6.jpg" alt="Snap6.jpg" border="0" height="550" width="525"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap7.jpg" alt="Snap7.jpg" border="0" height="569" width="675"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap8.jpg" alt="Snap8.jpg" border="0" height="315" width="326"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap9.jpg" alt="Snap9.jpg" border="0" height="661" width="675"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap10.jpg" alt="Snap10.jpg" border="0" height="381" width="257"><br>
<br>
&nbsp;&nbsp;&nbsp; 3、导入jar包，这些包也在刚刚那个文件夹下。<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap11.jpg" alt="Snap11.jpg" border="0" height="494" width="396"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap12.jpg" alt="Snap12.jpg" border="0" height="569" width="675"><br>
&nbsp;&nbsp;&nbsp; 导入的jar包在lib下可以看到。<br>
<br>
&nbsp;&nbsp;&nbsp; 4、新建hello.jsp文件。<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap13.jpg" alt="Snap13.jpg" border="0" height="513" width="583"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap14.jpg" alt="Snap14.jpg" border="0" height="564" width="525"><br>
<br>
&nbsp;&nbsp;&nbsp; 这里为了测试方便，所以选则行号。<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap16.jpg" alt="Snap16.jpg" border="0" height="473" width="562"><br>
<br>
&nbsp;&nbsp;&nbsp; hello.jsp的代码：<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap17.jpg" alt="Snap17.jpg" border="0" height="605" width="565"><br>
&nbsp;&nbsp;&nbsp; <br>
<br>
&nbsp;&nbsp;&nbsp; 5、创建HelloForm.java。<br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap18.jpg" alt="Snap18.jpg" border="0" height="261" width="575"><br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; 因为HelloForm.java继承ActionForm类。所以在superclass中要选择ActionForm类。<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap19.jpg" alt="Snap19.jpg" border="0" height="579" width="556"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap20.jpg" alt="Snap20.jpg" border="0" height="335" width="470"><br>
<br>
&nbsp;&nbsp;&nbsp; HelloForm.java代码：<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap21.jpg" alt="Snap21.jpg" border="0" height="605" width="790"><br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; 6、同理创建PersonBean.java，Constants.java,HelloAction.java。代码如下：<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap22.jpg" alt="Snap22.jpg" border="0" height="472" width="563"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap23.jpg" alt="Snap23.jpg" border="0" height="475" width="563"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap24.jpg" alt="Snap24.jpg" border="0" height="604" width="788"><br>
<br>
&nbsp;&nbsp;&nbsp; 7、将网页所需的图片拷到相应的文件夹中。<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap25.jpg" alt="Snap25.jpg" border="0" height="600" width="800"><br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp; 8、创建application.properties。<br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap28.jpg" alt="Snap28.jpg" border="0" height="600" width="800"><br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; 代码：<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap27.jpg" alt="Snap27.jpg" border="0" height="275" width="634"><br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; 9、创建struts-config.xml文件。<br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap30.jpg" alt="Snap30.jpg" border="0" height="611" width="528"><br>
<br>
&nbsp;&nbsp;&nbsp; 代码：<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap29.jpg" alt="Snap29.jpg" border="0" height="741" width="1024"><br>
<br>
&nbsp;&nbsp;&nbsp; 10、修改web.xml文件。代码：<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap31.jpg" alt="Snap31.jpg" border="0" height="741" width="1024"><br>
<br>
&nbsp;&nbsp;&nbsp; 12、运行服务器：<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap33.jpg" alt="Snap33.jpg" border="0" height="521" width="644"><br>
<br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap34.jpg" alt="Snap34.jpg" border="0" height="610" width="525"><br>
<br>
&nbsp;&nbsp;&nbsp; 结果出来: <br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <img src="http://www.blogjava.net/images/blogjava_net/rickhunter/%20eclipse+struts/Snap39.jpg" alt="Snap39.jpg" border="0" height="472" width="644"><br>
&nbsp;&nbsp;&nbsp; <br>
<br>
&nbsp;&nbsp;&nbsp; <br>
<br>
&nbsp;&nbsp;&nbsp; <br>
<br>
<br>
<img src ="http://www.blogjava.net/rickhunter/aggbug/13685.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rickhunter/" target="_blank">千山鸟飞绝</a> 2005-09-21 22:01 <a href="http://www.blogjava.net/rickhunter/articles/13685.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>