| « | November 2025 | » |  | 日 | 一 | 二 | 三 | 四 | 五 | 六 |   |  |  |  |  |  | 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |  |  |  |  |  |  |  |  
  |   
| 公告 |  
我近期在研究Maven、Turbine、EJB,如果有朋友想一起交流学习,请加我的MSN:moshco_zhu@hotmail.com! 
   你为什么来,你何必来,叫我怎么见你! 
--《小城之春》   |   
  |     
 
  | 
本站首页    管理页面    写新日志    退出
   
 [01 技术文档]在Weblogic 10中做EJB3的开发    之基础开发 (7) |  
 
在Weblogic 10中做EJB3的开发    之基础开发 (7)
---------------------------------------------------------------------------  好了,现在可以编写表示层的代码了。 文件地址:[WebContext/test/trade_record.jsp] 内容如下: ---------------------------------------------------------------------- <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>测试-交易记录</title> </head> <script language="javascript" type="text/javascript">
  /**   * 函数名: getSysAliasAss   * 功能描述: 获取运行系统别名(辅助)   */  function getSysAliasAss(){      //读取系统当前请求的pathName   var strPathName = window.location.pathname;      //以字符串"/"分割到数组   var oAryTmp = strPathName.split("/");   //系统别名   var strSysAlias = "/" + oAryTmp[1];      //返回函数值   return strSysAlias;     }        /*   * 函数名称: getDocXML   * 功能:  数据文档对象   *   */  function getDocXML(strXMLUrl){   var oXMLDoc = new ActiveXObject("Microsoft.XMLDOM");   oXMLDoc.async = false;   oXMLDoc.load(strXMLUrl);   //返回函数值   return oXMLDoc;  }    
  /**   * 函数名: queryUnsharp   * 功能描述: 模糊查询   */  function queryUnsharp(){      //创建Ajax对象   var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0");      //获取查询关键字   var strKeyword = keyword.value;      //确定请求的Url   var strUrl = getSysAliasAss() + "/sv/TradeRecordSV.do?dowith=queryUnsharp&keyword=" + strKeyword;        //发出请求   xmlHttpReq.open("GET", strUrl, false);   xmlHttpReq.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8;");   xmlHttpReq.send();        //读取数据   var oXML = xmlHttpReq.responseXML;   //alert(xmlHttpReq.responseText);
   //样式表文档对象   var strXMLUrl = getSysAliasAss() + "/xml/lstTradeRecord.xsl";   var oXSL = getDocXML(strXMLUrl);      //转换为HTML代码   var strHTML = oXML.transformNode(oXSL);   //装载HTML   lstTradeRecord.innerHTML = strHTML;   detailTradeRecord.innerHTML ="";   //alert(strHTML);      //返回函数值   return oXML;  }      /**   * 函数名: findTradeRecord   * 功能描述: 模糊查询   */  function findTradeRecord(iId){      //alert("[" + iId + "]");      if(iId == null || iId < 0){    return ;   }      //创建Ajax对象   var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0");      //确定请求的Url   var strUrl = getSysAliasAss() + "/sv/TradeRecordSV.do?dowith=findTradeRecord&id=" + iId;        //发出请求   xmlHttpReq.open("GET", strUrl, false);   xmlHttpReq.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8;");   xmlHttpReq.send();        //读取数据   var oXML = xmlHttpReq.responseXML;   //alert(xmlHttpReq.responseText);
   //样式表文档对象   var strXMLUrl = getSysAliasAss() + "/xml/detailTradeRecord.xsl";   var oXSL = getDocXML(strXMLUrl);      //转换为HTML代码   var strHTML = oXML.transformNode(oXSL);   //装载HTML   detailTradeRecord.innerHTML = strHTML;      //返回函数值   return oXML;  }
 </script>
 <body> <p>使用标签配置JNDI:<br /> </p> <hr width="100%" size="1" /> </p> <table width="800" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">   <tr>     <td bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="1" cellpadding="0">       <tr>  <td height="20" bgcolor="#CCCCCC">交易记录列表</td>  </tr>       <tr>  <td height="20"><hr width="100%" size="1" />        </td>  </tr>       <tr>  <td height="40" align="center"><p>查询内容:      <input name="keyword" type="text" id="keyword" size="40" />        <input name="query" type="button" id="query" value="查询" onclick="queryUnsharp();" />   </p>    <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">      <tr>        <td height="20" bgcolor="#FFFFFF" >      <span id="lstTradeRecord"></span>     </td>      </tr>    </table>    <p> </p>               </td>  </tr>       <tr>  <td height="40" align="center" valign="top">   <span id="detailTradeRecord"></span>   </td>  </tr>     </table>     <p> </p></td>   </tr> </table> </body> </html> ----------------------------------------------------------------------  下面是两个必要的样式表文件。
 文件地址:[WebContext/xml/detailTradeRecord.xsl] ---------------------------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?>
 <?xml version="1.0" encoding="UTF-8"?>
 <xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
   <table width="50%" border="0" cellspacing="0" cellpadding="0">    <xsl:for-each select="beans/bean/field">     <xsl:sort data-type="number" order="ascending"      select="@IndexOrder" /><!-- ascending descending  -->
     <tr>      <td width="35%" height="20" align="left">       <xsl:if test="@name = 'Id'">        <xsl:text disable-output-escaping="yes">         编号&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'TradeType'">        <xsl:text disable-output-escaping="yes">         交易类型&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'TimeBegin'">        <xsl:text disable-output-escaping="yes">         开始时间&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'GoodsName'">        <xsl:text disable-output-escaping="yes">         货品名称&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'GoodsInfo'">        <xsl:text disable-output-escaping="yes">         货品信息&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'Money'">        <xsl:text disable-output-escaping="yes">         总金额&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'MoneyInfo'">        <xsl:text disable-output-escaping="yes">         金额相关信息&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'TradePoint'">        <xsl:text disable-output-escaping="yes">         交易方向&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'User'">        <xsl:text disable-output-escaping="yes">         用户&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'Comrade'">        <xsl:text disable-output-escaping="yes">         交易伙伴&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'State'">        <xsl:text disable-output-escaping="yes">         状态&nbsp;        </xsl:text>       </xsl:if>       <xsl:if test="@name = 'Remark'">        <xsl:text disable-output-escaping="yes">         备注&nbsp;        </xsl:text>       </xsl:if>
      </td>      <td width="3%">       <xsl:text disable-output-escaping="yes">        &nbsp;       </xsl:text>      </td>      <td width="62%" align="left">       <xsl:value-of select="." />       <xsl:text disable-output-escaping="yes">        &nbsp;       </xsl:text>      </td>     </tr>
    </xsl:for-each>   </table>
  </xsl:template> </xsl:stylesheet> ----------------------------------------------------------------------
 文件地址:[WebContext/xml/lstTradeRecord.xsl] ---------------------------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?>
 <xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
   <table width="100%" border="0" cellspacing="0"    cellpadding="0">
    <tr>     <td height="20" bgcolor="#FFFF33">交易类型</td>     <td height="20" bgcolor="#FFFF33">开始时间</td>     <td height="20" bgcolor="#FFFF33">货品名称</td>     <td height="20" bgcolor="#FFFF33">总金额</td>     <td height="20" bgcolor="#FFFF33">交易方向</td>     <td height="20" bgcolor="#FFFF33">交易伙伴</td>     <td height="20" bgcolor="#FFFF33">状态</td>     <td height="20" bgcolor="#FFFF33">操作</td>    </tr>
    <xsl:for-each select="beans/bean">     <xsl:sort data-type="number" order="ascending"      select="@IndexOrder" /><!-- ascending descending  -->
     <tr>      <xsl:for-each select="field">       <xsl:if test="@name != 'Id'">        <td height="20" bgcolor="#FFFFFF">         <xsl:value-of select="." />         <xsl:text          disable-output-escaping="yes">          &nbsp;         </xsl:text>        </td>       </xsl:if>      </xsl:for-each>      <td height="20" bgcolor="#FFFFFF">       <input name="findTradeRecord" type="button"        id="findTradeRecord" value="详细">        <xsl:attribute name="onclick">findTradeRecord(<xsl:value-of select="field[1]" />);</xsl:attribute>       </input>      </td>     </tr>
    </xsl:for-each>
    <xsl:if test="count(beans/bean)=0">     <tr>      <td height="30" bgcolor="#FFFFFF" colspan="7">       <font color="red">没有找到数据!</font>       <xsl:text disable-output-escaping="yes">        &nbsp;       </xsl:text>      </td>     </tr>    </xsl:if>
   </table>
  </xsl:template> </xsl:stylesheet> ----------------------------------------------------------------------
 好了,到此,可以编译发布了!
 
 5.2 在同一个JVM中,使用依赖注入的方式访问本地容器中的EJB对象
 现在我需要强调一点的是:在weblogic server中,如果你的servlet采用依赖注入(DI)的方式访问本地JVM中的EJB,必须要注意的是,web.xml中根节点[web-app]的属性[version]一定要等于[2.5]或者更高的版本,比如像写成下面这样: ---------------------------------------------------------------------- <web-app version="2.5"> ---------------------------------------------------------------------- 这里,需要提醒一点的是,我们之前写成: ---------------------------------------------------------------------- <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> ---------------------------------------------------------------------- 它是不支持servlet中使用依赖注入的方式访问EJB3的。
 还有一点就是:依赖注入只能注入本地服务器的对象,不能注入远程服务器的对象。
 可以去这里参考一下:[http://edocs.bea.com.cn/wls/docs100/webapp/annotateservlet.html]
 
 
 
 5.3 在配置文件中引用EJB,然后使用JNDI访问
 
待续......
  |  
  阅读全文(6610) | 回复(3) | 编辑 | 精华 |     
| 回复:在Weblogic 10中做EJB3的开发    之基础开发 (7) |  
| 
 tieying(游客)发表评论于2007/12/19 9:16:58  |    下一部分什么时候出来,万分火急,希望尽快发布!
谢谢!
等待中......
  |  
  个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除 |     
| 回复:在Weblogic 10中做EJB3的开发    之基础开发 (7) |  
| 
 我怎么了我(游客)发表评论于2007/12/31 15:24:52  |    好东西
  |  
| 个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除 |     
| 回复:在Weblogic 10中做EJB3的开发    之基础开发 (7) |  
| 
 tieying(游客)发表评论于2008/2/29 16:58:40  |    好久了还不见有新资料
好想呀!!
  |  
| 个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除 |   
  »  1 »  
 |