我需要在屏幕上显示一些在 script-let 中定义的方法中读取的值。下面的代码无法编译:
<%!
void displayRecursively(KnowledgeElement ke, ExtendsRelationshipService ers){
List<ExtendsRelationship> erList = null;
%><%=ke.getName()%><br /><%!
try {
erList = ers.findIncomingExtendsKERelationships(ke);
} catch (Exception e) {}
if (erList!=null){
for (ExtendsRelationship er : erList){
KnowledgeElement startKe = er.getStartKE();
displayRecursively(startKe,ers);
}
}
}
%>
<%
KnowledgeElement ke = null;
ke = (KnowledgeElement)request.getAttribute("knowledgeElement");
ExtendsRelationshipService ers = (ExtendsRelationshipService)request.getAttribute("ers");
displayRecursively(ke,ers);
%>
编译错误是:
PWC6199: Generated servlet error:
cannot find symbol
symbol: variable ke
location: class org.apache.jsp.WEB_002dINF.ke_jsp
使用 .. %><%=ke.getName()%><% .. 也不会编译。有人可以建议如何解决这个问题吗?