[mayaa-user:112] forEach に渡す値による動作の違い
NANBA Toshiaki
nanba @ crest-cs.co.jp
2006年 1月 26日 (木) 20:12:09 JST
南波と申します。forEachプロセッサの使い方についてお聞きしたいこと
があります。
forEachプロセッサに渡すitemsの要素としてIntegerやStringを使った場
合は期待通りの結果が得られました。
Javaソース
List values = new ArrayList();
values.add(new Integer(1));
values.add("abcde");
// values.add(new java.util.Date());
request.setAttribute("values", values);
mayaaファイル
<m:forEach id="xxx" var="value" items="${request.values}">
<m:write value="${value}" />
</m:forEach>
出力
1abcde
しかしながら、itemsの要素によっては例外の発生するモノがありました。
上の例だとコメントを外してDateを要素に与えた場合や、自作クラスのイ
ンスタンスを要素に含んでいた場合に発生しました。
例外(一部)
No Context associated with current Thread
processed node
original = /java.lang.Throwable.html: 12
injected = /java.lang.Throwable.html: 14
stackTrace:
org.mozilla.javascript.Context.getContext(2147)
org.mozilla.javascript.Context.javaToJS(1622)
org.seasar.mayaa.impl.cycle.script.rhino.ScriptEnvironmentImpl.startScope(126)
org.seasar.mayaa.impl.engine.processor.ForEachProcessor.next(79)
org.seasar.mayaa.impl.engine.processor.ForEachProcessor.doStartProcess(96)
org.seasar.mayaa.impl.engine.RenderUtil.renderTemplateProcessor(127)
:
:
恐らく使い方が間違っているとかだと思いますが、どのようにしてforEach
へ値を渡せばよろしいのでしょうか。
環境:
- Mayaa 1.0.0
- j2sdk1.4.2_09
- Tomcat 4.1.31
- Eclipse 3.1.0 + WTP
--
南波 利明 <nanba @ crest-cs.co.jp>
mayaa-user メーリングリストの案内