是否可以放置基本类型,如布尔值作为属性?
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
答案 0 :(得分: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" />