2011-10-31 11 views
1

EDIT:やっと見つけました。何らかの理由でJettyでは動作しませんが、Tomcatでビルドして走ったときに働いていました。全く分からない理由しかし...私はこれを整理しようとしている狂気の最後の夜行きましたコアtaglibでリクエストパラメータを取得できません。request.getparameterで動作しますか?

ああ、男...

シンプルな前提:

春のRequestDispatcherとコントローラクラス、簡単なJSPページなどを使用してビュー。私のコントローラで

request.setAttribute("banana", "myValue"); 

reqular JSPコードを使用する場合:

<%=request.getAttribute("banana")%> 

を期待どおりに

を出力しますが、私はそれがC-のtaglibを使用して仕事を得る傾けます。私はすべてを試しました:

<c:out value="${param.banana}"/> <c:out value="${requestScope.banana}"/> and like 4 more. 

何もしていません...それはちょうど$ {param.banana}の値をそのままテキストとして出力します。

私は見回しましたが、解決策を見つけることができませんでした。私は馬鹿でなければなりません。私を助けてください。

EDITは、明確にするのを忘れ: 私は適切なjspheader

<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core_rt' %> 

もあなたはおそらくちょうどJSPの先頭にコアのtaglibの使用を宣言するのを忘れ

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
+0

カスタマーのtaglibを書き、 "$ {requestScope.banana}"をmy_taglibに渡さないと、my_taglibを実装しているjavaクラスにrequestScopeを渡すことができますか? – meadlai

答えて

1

その他参考:

これは私が実行したJettyサーバーの問題でした。 Tomcatにデプロイするとき、すべてが期待通りに機能しました。

Intelljの中からそのまま実行しましたが、起動時にどのライブラリがJettyと共に展開されたのかがわかっています。

2

を試してみましたが含まれています:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

適切な方法は次のとおりです。

<c:out value="${requestScope.banana}"/> 

か、単に

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

あなたは、同じ名前のページスコープの属性を持っていない限り。

+0

時間をとっていただきありがとうございます!いいえ、私はヘッダーを含んでいました、新しい/古いと試してみました。コメントを明確にしました。それを行う方法については、私が言及したように、私はあなたが言ったすべてを含む約4つの異なる方法で試した......(コード中にtypoがありません)*泣き*;) – Mathias

+0

質問を編集して、問題を示す最小限の完全なJSPページと生成されたHTMLコードを含めてください(ページソースの表示で見られるようにブラウザ)。 –

+0

私はそれを見つけました...それは桟橋です、そこでは動作しませんが、私がTomcatでビルドして動作するときに動作します...それをどのように修正するかわかりません。 – Mathias

関連する問題