隨筆-2  評(píng)論-0  文章-17  trackbacks-0

          Weblogic 10下JSP el與ognl的問題與解決方法

          admin發(fā)布于2010-05-06 10:17 | 142次閱讀

          English Title:Weblogic 10 leaves the problem of JSP El and Ognl and means of settlement
          在使用Webwork或Struts2標(biāo)簽寫JSP時(shí),經(jīng)常會(huì)用到如下寫法: <ww:radio name="gender" list='#{"1":"Male", "2":"FeMale"}' /> <ww:select name="yes" list='#{"1":"YES","2":"NO"}' /> 這是ognl的寫法,list里的表達(dá)式將解釋成成一個(gè)Map,實(shí)際上是一個(gè)LinkedHashMap。 ? 這種寫法在Tomat下部署是沒有任何問題的,但部署到Weblogic 10下問題就來了,這里web.xml的version聲明為2.4,編譯JSP時(shí)報(bào)表達(dá)式錯(cuò)誤。如果聲明為2.3是不會(huì)報(bào)錯(cuò)的,因?yàn)閟ervlet 2.3(即jsp 1.2)是不支持EL的,使用Weblogic 9同樣也不會(huì)報(bào)錯(cuò)。據(jù)此可以推測(cè)原因?yàn)榫幾gJSP時(shí)Weblogic? JSP編譯器將OGNL的表達(dá)式誤認(rèn)為是EL表達(dá)式。 ? ?解決辦法: 1、禁用EL。在web.xml上加上 <jsp-config> <jsp-property-group> <url-pattern>*.jsp</url-pattern> <el-ignored>true</el-ignored> </jsp-property-group> </jsp-config> ?2、更改web.xml的version為2.3。 ?3、因?yàn)榇罅宽撁嬗玫紼L,如${someValue},所以1和2基本行不通的,所以從OGNL的表達(dá)式入手,最終寫成 list='#@java.util.LinkedHashMap@{"1":"Male","2":"FeMale"}'?, 顯式指定使用LinkedHashMap來構(gòu)建Map。問題解決。
          ==========English==========
          When use Webwork or Struts2 label write JSP, classics regular meeting uses a method: <ww:rAdio Name="gender" List='#{"1" :" Male" , "2" :" FeMale"}' /><ww:sElect Name="yes" List='#{"1" :" YES" , "2" :" NO"}' />This is Ognl write a law, the expression in List becomes the explanation a Map, it is a LinkedHashMap actually. ? This kind writes a law to issue deploy in Tomat do not have any problems, but deploy came to the problem below Weblogic 10, the Version statement of Web.xml is here 2.4, compile mistake of JSP times expression. If statement is 2.3 be to won't sign up for a fault, because of Servlet 2.3(namely Jsp 1.2) does not support EL, use Weblogic 9 also won't sign up for a fault likewise. Can you figure the reason is the Weblogic when compiling JSP accordingly? JSP is compiled implement consider as the expression of OGNL EL expression by accident. ? ? Settle way: 1, ban with EL. <jsp-config is added on Web.xml><jsp-property-group><url-pattern>*.jsp</url-pattern><el-ignored>true</el-ignored></jsp-property-group></jsp-config>? 2, the Version that changes Web.xml is 2.3. ? 3, use EL because of a large number of pages, be like ${someValue} , so 1 and 2 won't do basically, so the expression proceed with from OGNL, write finally into List='#@java.util.LinkedHashMap@{"1" :" Male" , "2" :" FeMale"}' ? , explicit appoint use LinkedHashMap to come compose builds Map. Ask the problem is solved.

          http://www.pjprimer.com/view-24083-1.html
          posted on 2010-08-09 10:32 lameer 閱讀(783) 評(píng)論(0)  編輯  收藏 所屬分類: struts2學(xué)習(xí)
          主站蜘蛛池模板: 三穗县| 湟源县| 沙河市| 崇阳县| 昔阳县| 藁城市| 巢湖市| 镇巴县| 太和县| 富川| 新干县| 开阳县| 富源县| 宜兰市| 高清| 张掖市| 阿鲁科尔沁旗| 汨罗市| 毕节市| 江川县| 随州市| 永春县| 昔阳县| 自贡市| 聊城市| 太湖县| 柯坪县| 陵川县| 新丰县| 朝阳区| 永丰县| 高陵县| 讷河市| 田东县| 阿拉尔市| 吉首市| 眉山市| 日土县| 康马县| 陇西县| 辉南县|