每日一得

          不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發
          最近關心的內容:SSH,seam,flex,敏捷,TDD
          本站的官方站點是:顛覆軟件

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            220 隨筆 :: 9 文章 :: 421 評論 :: 0 Trackbacks
          key words: jsp,jstl,1.0,1.1,fn函數

          原來一直用struts,最近項目里有人用jstl,我也就順便拿來用,感覺還是不錯。

          過程中碰到一些小的問題總結如下:

          一。版本問題
          jstl存在1.0和1.1的差異問題,用EL建議需要在1.1的版本下,1.1的URI的標志為:
          <%@?taglib?uri="http://java.sun.com/jsp/jstl/core"?prefix="c"%>
          <%@?taglib?uri="http://java.sun.com/jsp/jstl/functions"?prefix="fn"%>

          注意,1.0版本沒有/jsp/.

          如果用的1.0會出現如下異常
          org.apache.jasper.JasperException:?/public/left_tree.jsp(100,24)?According?to?TLD?or?attribute?directive?in?tag?file,?attribute?items?does?not?accept?any?expressions
          ????org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:
          510)
          ????org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:
          375)
          ????org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:
          314)
          ????org.apache.jasper.servlet.JspServlet.service(JspServlet.java:
          264)
          ????javax.servlet.http.HttpServlet.service(HttpServlet.java:
          802)
          ????org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:
          75)
          ????org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:
          77)
          ????com.wellsoon.zfzw.webapp.common.VabAccessFilter.doFilter(VabAccessFilter.java:
          43)


          root?cause?



          二。打開EL

          <%@?page?contentType="text/html;charset=gb2312"?language="java"?isELIgnored="false"?%>

          前提是容器支持2.0,即使支持默認也未必打開,最安全的方式就是顯示打開 isELIgnored="false"

          三.fn的用法
          對于Vo里的一個List作length的計算或判斷很方便
          <table?width="160"?border="0"?cellspacing="0"?cellpadding="4">
          ????????????????????????
          <c:forEach?items="${menuInfos}"?var="m">
          ????????????????????????????
          <c:if?test="${fn:length(m.subMenus)>0}">
          ??????????????????????????
          <tr>
          ????????????????????????????
          <td>
          ????????????????????????????????
          <script?language="JavaScript">
          ??????????????????????????????????????
          var?tObj?=?new?treeClass("A1")
          ??????????????????????????????????????tObj.start();
          ?????????????????????????????????????tObj.m_start(
          "<c:out?value="${m.menuModule}"/>",0);
          ????????????????????????????????????
          <c:forEach?items="${m.subMenus}"?var="sub">
          ??????????????????????????????????????tObj.add_Sub(
          "<c:out?value="${sub.menuName}"/>","<%=path%>
          <c:out?value=
          "${sub.url}"/>","mymain");
          ????????????????????????????????????
          </c:forEach>
          ?????????????????????????????????????tObj.m_end();
          ??????????????????????????????????????tObj.end();
          ??????????????????????????????????????tObj.print();
          ?????????????????????????????????
          </script>
          ????????????????????????????
          </td>
          ????????????????????????
          </tr>
          ????????????????????????????
          </c:if>
          ????????????????????????
          </c:forEach>

          ????????????????????
          </table>
          ?
          四.tld的聲明可以在web.xml作顯式聲明也可以用http作直接URL聲明
          推薦用本地的方式.

          posted on 2006-12-11 19:21 Alex 閱讀(2812) 評論(2)  編輯  收藏 所屬分類: web技術

          評論

          # re: jstl標簽注意問題 2006-12-11 19:33 BeanSoft
          多謝分享! 最近用 Weblogic 9, 真慢啊...郁悶死了  回復  更多評論
            

          # re: jstl標簽注意問題 2007-05-16 16:29 xdy3008
          感覺跟你一樣 ,確實 C標簽還是比較實用的。

          反樸歸真的感覺還是不錯的。。  回復  更多評論
            

          主站蜘蛛池模板: 赣州市| 宜昌市| 银川市| 胶州市| 陈巴尔虎旗| 抚顺县| 阜城县| 新田县| 托克逊县| 珠海市| 西盟| 泾川县| 崇明县| 神农架林区| 盘山县| 乳源| 大城县| 阜新市| 甘泉县| 灵台县| 宁远县| 阳城县| 沙雅县| 汤阴县| 朝阳区| 宾阳县| 上饶县| 连南| 黎川县| 玉溪市| 杭锦旗| 茶陵县| 称多县| 万荣县| 宣恩县| 峨眉山市| 山东| 瓦房店市| 儋州市| 电白县| 大关县|