当前位置: 首页 > 面试题库 >

JSPG0122E:无法解析Websphere 8中的EL函数

孟高峰
2023-03-14
问题内容

我正在将一个Web应用程序从Websphere 6.1迁移到Websphere 8,并且在其中一个JSP页面中遇到以下错误:

com.ibm.ws.jsp.translator.JspTranslationException:JSPG0227E:翻译/jsp/myJsp.jsp时捕获到异常:/jsp/myJsp.jsp(863,4)->
JSPG0122E:无法解析EL函数$
{不为空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.ValidateVisitor.validateCustomTagAttribute(ValidateVisitor.java:1757)上的com.ibm.ws.jsp.translator.visitor.validator.ELValidator.validateELExpression(ELValidator.java:149)在com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor的com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.validateCustomTagAttributeValues(ValidateVisitor.java:1405)处。

JSP文件中有问题的部分如下所示:

<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>

真正使我困惑的是EL,当第二个表达式几乎相同时,从第三个表达式引发了异常。

Operation 是一个生成的类:

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;
    }
}

这些文件在迁移期间未更改,并且在WAS 6.1上运行良好。有人知道这是怎么回事吗?


问题答案:

WebSphere Application Server
v8.0及更高版本中增强了负责检查是否将保留关键字用作EL变量标识符的代码,从而使检查更加严格。变量检查代码不仅检查保留的EL关键字,还检查Java保留的关键字。

请参阅本文以获取更多信息:http
:
//www-01.ibm.com/support/docview.wss?uid=
swg21642419&
myns=
swgws&
mynp=
OCSSEQTP&
mync=A



 类似资料:
  • 问题内容: 大家好,我正在尝试在选项卡中列出文本数据,这是我的方法 无法解析构造函数ArrayAdapter 的方法,这是我的主要活动。任何帮助将不胜感激,我仍然是一个noobie 。 问题答案: 更改 至 你可以在使用。

  • 我使用的是spring boot thymeleaf neo4j。除了thymeleaf无法解析模板product_网格中th:each块中使用的'product'变量的一些属性外,其他一切都正常工作。html,其中包括表单标记中的th:src=“${product.URL}”、th:text=“${product.title}”和th:action=“@{/product/(${product.

  • 问题内容: 有人可以帮我这段代码。当前它将在第4行进行投诉:webDriver =新的FirefoxDriver(ff_ep_profiles)说它无法解析构造函数。我需要加载扩展程序,因此我正在创建配置文件 问题答案: 在使用 Selenium v​​3.11.x , GeckoDriver v0.20.0 和 Firefox Quantum v59.0.2时 ,可以使用不同的选项来调用新的/现

  • 我有一个java项目,我正在使用Allure生成测试报告。我发现了这个问题,需要使用以下代码重命名我的测试: 我已经从下面导入了Allure生命周期: 并使用以下依赖项: 但是,这句话很有诱惑力。getLifecycle()它正在抱怨无法解析“Allure”中的方法“getLifecycle”。 如何修复错误?

  • 我是android开发的新手,正在尝试将recycler视图与setAdapter绑定,但遇到了以下错误“无法解析'ConstraintLayout'中的方法'setAdapter'” 我的主要活动。java代码是: 我的主要目标是使用ActivityMainBinding将recyclerView与setAdapter绑定 这就是我出错的地方- 它告诉我重命名引用,这到底意味着什么? 这项活动很