2011-10-23 73 views
0

私はSpringフォームバインディングとJSTLを使用しています。私のコントローラでSpringとJSTL:フォームバインディングで項目の文字列値を連結する方法:<form:options items =?

:しかし

<form:select path="myform.value">        
<form:options items="lookupDataId + ${myLookupId}" itemValue="id.lookupId" itemLabel="id.description" /> 
</form:select> 

:私のJSPで

modelAndView.addObject("lookupDataId1", new LookupDataObject(1)); 
modelAndView.addObject("lookupDataId2", new LookupDataObject(2)); 

は、私が "lookupDataId1"、 "lookupDataId2" のようになり、単語 "lookupDataId" と任意ののIdsを連結したかったです次のエラーが表示されます。

1773422 [http-8080-2] ERROR org.springframework.web.servlet.tags.form.OptionsTag - Type [java.lang.String] is not valid for option items 
javax.servlet.jsp.JspException: Type [java.lang.String] is not valid for option items 

オプションの値をどのように連結することができますかミズ。 ありがとうございます!

+0

これにより、lookupDataId2の値が正しく表示されます。$ {lookupDataId} でも、動作しておらず、同じエラーが発生します。 – Jemru

答えて

0

ただ、リスト内のアイテムを格納します。

List<LookupDataObject> items = new ArrayList<LookupDataObject>(); 
items.add(new LookupDataObject(1)); 
items.add(new LookupDataObject(2)); 
modelAndView.addObject("lookupDataIds", items); 

、その後をJSPに

<form:options items="${lookupDataIds}" .../> 
+1

私はこれが上記の連結に関する質問に答えているとは思わない。ここでOPの間違いを修正してModelAndViewにオブジェクトを配置したのですが、あなたのソリューションがアイテムに値+ ID連結値を表示するのをどのように助けているのか分かりません。 –

関連する問題