当前位置: 首页 > 知识库问答 >
问题:

JSTL,Tomcat6->Tomcat7升级

萧秋月
2023-03-14

我正在将tomcat6升级到tomcat7。目前,该应用程序在tomcat6上部署并运行良好。

这是配置:

web.xml

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

在里面jsp:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

我有jstl-1.2.jar,jstl-api-1.2.jar,jstl-1.2jar在我的Tomcat/lib目录(与Tomcat6相同)。

我最终得到了与此相关的各种异常,例如:

org.apache.jasper.JasperException: /WEB-INF/tags/form/show.tagx (line: 25, column: 89) "${object.class.simpleName}.field.${property}" contains invalid expression(s): javax.el.ELException: Failed to parse the expression [${object.class.simpleName}.field.${property}]

在我的pom里。我要开车了

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.1</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>taglibs</groupId>
        <artifactId>standard</artifactId>
        <version>1.1.2</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

Tomcat7是否应该不支持2.5?我尝试过使用3.0,但没有用。任何见解都值得赞赏。我已经尝试了这里提供的一些解决方案

如何安装JSTL?绝对uri:http://java.sun.com/jstl/core无法解决

Tomcat 7和JSTL

但没有成功。

共有1个答案

能向晨
2023-03-14

标识符[class]不是EL规范要求的有效Java标识符。可以通过将系统属性org.apache.el.parser.SKIP_IDENTIFIER_CHECK设置为true来禁用此检查。

-Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK=true

或者,您可以使用以下表达式替代:

${object.['class'].simpleName}.field.${property}
 类似资料:
  • 问题内容: 在Linux中,是否可以在tomcat6上部署使用Java 7编写的Web应用程序?如果是这样,需要修改什么配置才能使其正常工作? 我已经尝试过更改文件中的变量并重新启动,但是根据tomcat管理器网页,它仍在使用1.6,并且只有以1.6或更低版本编写的应用程序才能正确部署。 我在不同位置安装了jdk 1.6和1.7。 问题答案: 使用Java JDK 1.7.0编译servlet时遇

  • 我将一个应用程序从工作良好的tomcat7移植到tomcat6,因为CloudBees还不支持tomcat7,这是我正在考虑的一个PAAS。 我正在移植到Tomcat6.035。我认为el-api.jar在我的java-ee依赖项和tomcat上都是我的问题,但我不知道如何解决它。下面是错误和pom.xml的一个片段:

  • JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。在 developerworks 上其新系列的第一篇文章中,软件工程师 Mark Kolb 向您展示了如何使用 JSTL 标记来避免在 JSP 页面中使用脚本编制元素。您还将了解如何通过从

  • 我正在Java web应用程序中使用。现在,我可以使用命令运行我的web服务器。最近我注意到https://tomcat.apache.org/maven-plugin-2.0/tomcat7-maven-plugin/plugin-info.html中有一个名为的命令,它说: tomcat7:run: 使用嵌入式Tomcat服务器将当前项目作为动态web应用程序运行。 tomcat7:run-w

  • jstl算是在jsp中最常用的标签库了吧. 把4个jar包全部拷贝到WebContent/WEB-INF/lib 目录即可 javax.servlet.jsp.jstl-api-1.2.1.jar taglibs-standard-impl-1.2.5.jar taglibs-standard-spec-1.2.5.jar taglibs-standard-jstlel-1.2.5.jar 如果是

  • 19.5 JSP & JSTL Spring为JSP和JSTL视图提供了几个开箱即用的解决方案。 使用JSP或JSTL是使用在WebApplicationContext中定义的常规视图解析器完成的。 此外,当然,您需要编写一些实际渲染视图的JSP。 设置应用程序使用JSTL是一个常见的错误源,主要是由于混淆了不同的servlet规范JSP和JSTL版本号,它们的含义和如何正确声明taglibs引起