2010-05-26 44 views
0

如何在Struts 1.x框架中實例化一個Integer bean並賦值?如何在Struts 1.x中定義一個Integer bean

<bean:define id="index" type="java.lang.Integer" value="0"/> 

<bean:define id="index" type="java.lang.Integer" value="${0}"/> 

結果在一個:java.lang.ClassCastException:java.lang.String中

<bean:define id="index" type="java.lang.Integer" value="<%=0%>"/> 

結果:所述的方法SetValue(字符串) DefineTag類型不適用於參數(int)

<% java.lang.Integer index = new java.lang.Integer(0); %> 

工程,但讓我的眼睛流血。

請注意,我不得不重構迭代列表,但現在在迭代中應用一個過濾器。這是所有的最乾淨的解決方案!

<logic:equal name="aplicacion" property="generico" value="false" indexId="index"> 

也許我需要對此有完全不同的看法。

回答

1

你不能默認bean類型爲類型的

java.lang.String (if you specify a value attribute)

java.lang.Object otherwise.

0

試試這個。

<bean:define id="index" type="java.lang.Integer" value="<%=java.lang.String.valueOf(0)%>"/> 
+0

你的代碼只是導致公司的貓跳出窗口!...和java.lang.ClassCastException。第二個例子幾乎是一樣的。 – 2010-06-07 14:07:20

0

入住這

<bean:define id="index" value = "0" /> 

並且參觀http://j2ee.masslight.com/Chapter5.html的工作示例。

+0

你的例子可以在許多場合工作,比如數字字符串,但是...這仍然不是java.lang.Integer bean。我不知道上面第5章的例子會發生什麼,如果有人發起了值爲「07」的bean?無論如何。 – 2010-06-11 11:27:24