我有一個控制器返回到一個JSP頁面類型爲MyClass
類型ArrayList
的對象的控制器。 ArrayList中的對象屬於不同的類,比如說它們分別是MyClass1
和MyClass2
,它們每個都擴展MyClass。我可以使用forEach標記迭代集合並獲取當前元素類型,這要歸功於MyClass
中的字段type
,但是當我嘗試訪問MyClass1
的特定字段時,出現此錯誤。jstl核心爲每個異類集合
javax.el.PropertyNotFoundException: Property 'noContentMessage' not found on type it.sei.core.rinterface.MyClass1
。
這裏是我的代碼:
class MyClass {
String type;
String variable;
}
class MyClass1 extends MyClass{
String someOtherField;
}
class MyClass2 extends MyClass{
String noContentMessage;
}
<core:forEach items="${model.GraphList}" var="element" varStatus="index">
<script language="javascript" type="text/javascript">
var type = '${element.type}';
switch (type)
{
case "type1":
{
var variable = '${element.variable}';
}
break;
case "type2":
{
var message = '${element.noContentMessage}';
}
break;
}
</script>
</core:forEach>
那麼,爲什麼會出現這種情況? JSTL不可能處理這種情況嗎?
向我們展示這個班級的獲得者。 – NINCOMPOOP