struts 2.0 elが機能しません
3190 ワード
1
.プロジェクト全体にel式を使用するように設定するには、web.xmlに追加する必要があります. (1つのアイテムを制御)
<
jsp
-
config
>
<
jsp
-
property
-
group
>
<
el
-
ignored
>
false
<
/
el
-
ignored
>
<
/
jsp
-
property
-
group
>
<
/
jsp
-
config
>
2
.あるjspページにel式を使用するように設定するには、jspページに(単一ページを制御する)を付ける必要があります.
<%
@ page isELIgnored
を選択します.
「
false
「
%>
3
.あなたのweb.xmlファイルのヘッダの参照は
2.4
.xsd ${requestScope.hello}
sdf
JSPページの
<%
@ taglib uri
を選択します.
「
http://java.sun.com/jstl/core
「
prefix
を選択します.
「
c
「
%>
に改心
<%
@ taglib uri
を選択します.
http:
//
java.sun.com/jstl/core_rt prefix="c"%>でよい.
JSP 2.0でel式が機能しないという問題が見つかりました.何度もデバッグを繰り返したところ、web.xmlで問題が発生していることがわかりました.バージョンの問題だと推測したが、どのように修正するかしか分からず、なぜそのように修正するのか分からない.web.xml
xml version="1.0" encoding="ISO-8859-1"
?>
<
web-app
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「
version
="2.4"
>
2.4バージョンではデフォルトでel式が使用可能ですが、2.5バージョンではデフォルトのel式がオフになっています
xml version="1.0" encoding="UTF-8"
?>
<
web-app
xmlns
="http://java.sun.com/xml/ns/javaee「
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance「
version
="2.5"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd「
>
では2.5のweb.xmlに対応します --> jspページに追加すべき
<%
@ page isELIgnored
を選択します.
「
false
「
%>
理由:一言で言えば、配置記述ファイルがサーブレット2.4仕様のWEBアプリケーションに従う場合、EL式の計算はデフォルトで有効であり、それに従わない場合、EL式の計算はデフォルトで無効である.ソリューションは、Web.xmlのDTD(ドキュメントタイプ定義)を2.4のバージョンに変更することもできます.
または3.0を直接使用します.
web.xml
.プロジェクト全体にel式を使用するように設定するには、web.xmlに追加する必要があります. (1つのアイテムを制御)
<
jsp
-
config
>
<
jsp
-
property
-
group
>
<
el
-
ignored
>
false
<
/
el
-
ignored
>
<
/
jsp
-
property
-
group
>
<
/
jsp
-
config
>
2
.あるjspページにel式を使用するように設定するには、jspページに(単一ページを制御する)を付ける必要があります.
<%
@ page isELIgnored
を選択します.
「
false
「
%>
3
.あなたのweb.xmlファイルのヘッダの参照は
2.4
.xsd ${requestScope.hello}
sdf
JSPページの
<%
@ taglib uri
を選択します.
「
http://java.sun.com/jstl/core
「
prefix
を選択します.
「
c
「
%>
に改心
<%
@ taglib uri
を選択します.
http:
//
java.sun.com/jstl/core_rt prefix="c"%>でよい.
JSP 2.0でel式が機能しないという問題が見つかりました.何度もデバッグを繰り返したところ、web.xmlで問題が発生していることがわかりました.バージョンの問題だと推測したが、どのように修正するかしか分からず、なぜそのように修正するのか分からない.web.xml
xml version="1.0" encoding="ISO-8859-1"
?>
<
web-app
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「
version
="2.4"
>
2.4バージョンではデフォルトでel式が使用可能ですが、2.5バージョンではデフォルトのel式がオフになっています
xml version="1.0" encoding="UTF-8"
?>
<
web-app
xmlns
="http://java.sun.com/xml/ns/javaee「
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance「
version
="2.5"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd「
>
では2.5のweb.xmlに対応します --> jspページに追加すべき
<%
@ page isELIgnored
を選択します.
「
false
「
%>
理由:一言で言えば、配置記述ファイルがサーブレット2.4仕様のWEBアプリケーションに従う場合、EL式の計算はデフォルトで有効であり、それに従わない場合、EL式の計算はデフォルトで無効である.ソリューションは、Web.xmlのDTD(ドキュメントタイプ定義)を2.4のバージョンに変更することもできます.
または3.0を直接使用します.
web.xml
<?xml version="1.0" encoding="GBK"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<!-- Struts2 Filter -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<!-- Struts2 Filter -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>