How to define an Integer bean in Struts 1.x

2019-08-28 04:06发布

How do you instantiate an Integer bean, assigning a value, in the Struts 1.x framework?

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

or

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

Results in a: java.lang.ClassCastException: java.lang.String

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

Results in: The method setValue(String) in the type DefineTag is not applicable for the arguments (int)

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

Works, but makes my eyes bleed.

Note that I had to refactor iterating over a list but am now applying a filter within the iteration. This was the cleanest solution of all!

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

Maybe I need to go about this completely differently.

3条回答
我命由我不由天
2楼-- · 2019-08-28 04:48

Try this.

<bean:define id="index" type="java.lang.Integer" value="<%=java.lang.String.valueOf(0)%>"/>
查看更多
小情绪 Triste *
3楼-- · 2019-08-28 04:49

Check this

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

Also visit http://j2ee.masslight.com/Chapter5.html for a working example.

查看更多
三岁会撩人
4楼-- · 2019-08-28 05:01

You cant by default bean type is of type

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

or

java.lang.Object otherwise.

查看更多
登录 后发表回答