1

ブール値のようなプリミティブ型を属性として配置することは可能ですか?

pageContext.setAttribute("boolValue", boolValue);

その後

<tiles:put name="boolValue" beanName="boolValue" type="boolean" />

私が使用する他のJspで:

<tiles:useAttribute name="boolValue" id="boolValue" classname="boolean" />

次のエラーが表示されます。

PWC6199: Generated servlet error:
string:///BaseBudgetLayout_jsp.java:124: incompatible types
found   : <nulltype>
required: boolean
PWC6199: Generated servlet error:
string:///BaseBudgetLayout_jsp.java:125: inconvertible types
found   : java.lang.Object
required: boolean
4

1 に答える 1

2

アトリビュート マップはプリミティブを値として保持できません。がかかることを考えるとjava.lang.Object、Java 5 オートボクシングは暗黙のうちにbooleanプリミティブをjava.lang.Booleanインスタンスに変換します。これは技術的にはまったくないbooleanため、Tiles タグのタイプ/クラス名は一致しません。

代わりに、

<tiles:put name="boolValue" beanName="boolValue" type="java.lang.Boolean" />

<tiles:useAttribute name="boolValue" id="boolValue" classname="java.lang.Boolean" />
于 2012-12-21T17:20:04.743 に答える