i moving web application websphere 6.1 websphere 8, , encountering following error in 1 of jsp pages:
com.ibm.ws.jsp.translator.jsptranslationexception: jspg0227e: exception caught while translating /jsp/myjsp.jsp: /jsp/myjsp.jsp(863,4) --> jspg0122e: unable parse el function ${not empty rowvo.operation.package}. @ com.ibm.ws.jsp.translator.visitor.validator.elvalidator.validateelfunction(elvalidator.java:500) @ com.ibm.ws.jsp.translator.visitor.validator.elvalidator.validateelexpression(elvalidator.java:122) @ com.ibm.ws.jsp.translator.visitor.validator.elvalidator.validateelexpression(elvalidator.java:149) @ com.ibm.ws.jsp.translator.visitor.validator.validatevisitor.validatecustomtagattribute(validatevisitor.java:1757) @ com.ibm.ws.jsp.translator.visitor.validator.validatevisitor.validatecustomtagattributevalues(validatevisitor.java:1405) @ com.ibm.ws.jsp.translator.visitor.validator.validatevisitor.visitcustomtagstart(validatevisitor.java:294) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processjspelement(jspvisitor.java:366) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processchildren(jspvisitor.java:419) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processjspelement(jspvisitor.java:369) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processchildren(jspvisitor.java:419) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processjspelement(jspvisitor.java:369) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processchildren(jspvisitor.java:419) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.processjspelement(jspvisitor.java:234) @ com.ibm.ws.jsp.translator.visitor.jspvisitor.visit(jspvisitor.java:216) @ com.ibm.ws.jsp.translator.jsptranslator.processvisitors(jsptranslator.java:127) @ com.ibm.ws.jsp.translator.utils.jsptranslatorutil.translatejsp(jsptranslatorutil.java:254) @ com.ibm.ws.jsp.translator.utils.jsptranslatorutil.translatejspandcompile(jsptranslatorutil.java:121)
the offending section in jsp file looks this:
<c:foreach var="rowvo" items="${searchresultcontainer.searchresultrowspage}" varstatus="opstatus"> <c:if test="${not empty rowvo.operation.jobscopedescription}"> <td>${rowvo.operation.jobscopedescription}</td> </c:if> <c:if test="${not empty rowvo.operation.package}"> <td>${rowvo.operation.package}</td> </c:if> </c:foreach> what confusing me exception thrown third el expression, when second identical.
operation generated class:
public class operation { //other properties omitted @xmlelement(name = "package") protected list<package> _package; protected list<string> jobscopedescription; public list<package> getpackage() { if (_package == null) { _package = new arraylist<package>(); } return this._package; } public list<string> getjobscopedescription() { if (jobscopedescription == null) { jobscopedescription = new arraylist<string>(); } return this.jobscopedescription; } } these files have not changed during migration, , worked fine on 6.1. have clue wrong here?
the code responsible checking use of reserved keywords el variable identifiers enhanced in websphere application server v8.0 , beyond, making checking more strict. variable checking code not checks reserved el keywords, java reserved keywords.
see article more info: http://www-01.ibm.com/support/docview.wss?uid=swg21642419&myns=swgws&mynp=ocsseqtp&mync=a
Comments
Post a Comment