java - Spring enums in a map -


i have 2 enumerateds:

public enum 1 implements representable{    1 } public enum 2 implements representable{    2 } 

now, need declare following spring-bean:

<bean id="listgeneratorcontainer" class="pack.age.container>     <property name="generators">         <map key-type="pack.age.representable"> <!-- how specuify type? -->             <entry key="one" value="1"/>             <entry key="two" value="2"/>         </map>     </property> </bean> 

where

package pack.age;  public class container{     private map<representable, interger> generators     //get, set, staff } 

is possible tell spring inject enums of different types? in case of single enum that's clear.

it's not working now:

 java.lang.illegalargumentexception: cannot convert value of type [java.lang.string] required type [pack.age.representable]: no matching editors or conversion strategy found     @ org.springframework.beans.typeconverterdelegate.convertifnecessary(typeconverterdelegate.java:219)     @ org.springframework.beans.typeconverterdelegate.convertifnecessary(typeconverterdelegate.java:107)     @ org.springframework.beans.beanwrapperimpl.convertifnecessary(beanwrapperimpl.java:362)     ... 34 more 

i think looking way embed enum keys in spring map definition. here example post same.

<util:map id="mymap">   <entry key="#{t(com.acme.myenum).elem1}" value="value1" />   <entry key="#{t(com.acme.myenum).elem2}" value="value2" /> </util:map> 

make sure reference above. in case this.

<bean id="listgeneratorcontainer" class="pack.age.container> <property name="generators">     <map key-type="pack.age.representable">          <entry key="#{t(pack.age.one)one}" value="1"/>         <entry key="#{t(pack.age.two)two}" value="2"/>     </map> </property> 

hope helps.


Comments

Popular posts from this blog

javascript - Karma not able to start PhantomJS on Windows - Error: spawn UNKNOWN -

c# - Display ASPX Popup control in RowDeleteing Event (ASPX Gridview) -

Nuget pack csproj using nuspec -