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

根据标签文件中的TLD或属性指令,属性项不接受任何表达式

长孙宜
2023-03-14
问题内容

我有一个项目,需要在HTML页面中显示电影的详细信息。尽管我没有使用像Spring或Struts这样的框架,但我必须严格遵循MVC。我也不允许使用scriptlet,但要使用JSTL和表达语言。我通常从数据库中检索数据,然后将其设置为Bean,然后列出这些Bean并将其传递给JSP,然后打印这些详细信息。但是,如果不允许我使用JSP,我将如何实现它。如果我使用servlet检索那些数据并将其设置为bean,然后设置为列表,然后通过请求分派器传递给它,那么如何从HTML页面的列表中获取每个bean?

我无法使此JSTL工作。我正在使用Netbeans 7.0和Apache Tomcat 7。

 <%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>DVD Guru</title>
        <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    </head>
    <body>   
     <div id="wrapper">     
        <c:set var="testing" value="blah"/>
                <c:out value="${testing}"/>
        </div>      
    </body>
</html>

我收到以下错误

根据标签文件中的TLD或属性指令,属性项不接受任何表达式

我已经从项目属性中导入了JSTL 1.1库。还应该做其他事情吗?


问题答案:

您必须使用 JSPJSTL- 只是一组自定义标记,不能单独使用。以及 表达语言
。如果您没有使用任何MVC框架,那么您需要自己完成一些工作。请查看(如果尚未使用)以下设计模式:

  1. Front ControllerCommand适用于简单的应用
  2. Front ControllerView Helper适用于更复杂的应用

UPD

要解决EL的问题,请尝试将JSP中的JSTL uri更正为:

 <%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>


 类似资料: