2011-02-06 15 views
49

は、現在、私が使用します。JSPで要求属性にアクセスする方法は?

<% 
final String message = (String) request.getAttribute ("Error_Message"); 
%> 

、その後

<%= message %> 

同じスクリプトレットを使用する代わりに、ELやJSTLで行うことができる場合、私は疑問に思うが。

答えて

80

EL式:

${requestScope.Error_Message} 

JSP ELにはいくつかの暗黙のオブジェクトがあります。暗黙オブジェクトの見出しのExpression Languageを参照してください。 JSTLを使用して

+38

これは 'requestScope'です。 '$ {Error_message}'はすべてのスコープをページ、リクエスト、セッション、アプリケーションの順にスキャンし、最初のマッチを返します。 – BalusC

+3

@BalusCヒントをありがとう。しかし、おそらく私はおそらくrequestScopeをとにかく保っています。 – Martin

+0

ありがとう、私は今すぐ新しいものを提供しました。 –

1

:request.getAttribute変数名とを設定

<c:set var="message" value='${requestScope["Error_Message"]}' /> 

ここvarがrequestScopeに等しいです。しかし、それは不可欠ではありません。 $ {Error_Message}はあなたに同じ結果を与えます。すべての範囲を検索します。あなたがError_Messageから取るコンテンツでいくつかの操作を行う場合は、メッセージを使用して行う必要があります。下のようなものです。

<c:out value="${message}"/> 
0

ほかの誰かが同様の問題を抱えている場合は、この点に注意してください。
Apache Tomcatのweb.xml設定を使用してリクエストを直接JSPに送信する場合、には要求属性attrが含まれていますが、${requestScope.attr}は機能していないようです。

関連する問題