基本上麻烦的是我无法在jsp页面中获取java bean的属性。我正在使用Java EE7 Recipes一书中的示例。我在JSP页面的主体中有下一个语句:
<body>
<jsp:useBean id="dateBean" scope="application" class="business.DateBean" />
<h2>The current date is: ${dateBean.currentDate}</h2>
</body>
NetBeans正在构建的错误部分是:
${dateBean.currentDate}
Java Bean Class I&#39; mssing如下:
package business;
import java.util.Date;
public class DateBean implements java.io.Serializable {
private Date currentDate = new Date();
public Date getCurrentDate() {
return currentDate;
}
public void setCurrentDate(Date currentDate) {
this.currentDate = currentDate;
}
}//DateBean
每当我尝试运行JSP时,我得到的错误如下:
PWC6038: "${dateBean.currentDate}" contains invalid expression(s):
javax.el.ELException: Unable to find ExpressionFactory of type:
org.apache.el.ExpressionFactoryImpl
进行一些研究我发现下面的标签可能丢失了,所以我添加了(在JSP页面中)但仍无法正常工作。
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
有人知道可能出现什么问题吗?非常感谢!!!
完整的jsp文件如下所示:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
</head>
<body>
<jsp:useBean id="dateBean" scope="application" class="business.DateBean" />
<h2>The current date is: ${dateBean.currentDate}</h2>
</body>
</html>
答案 0 :(得分:0)
使用scope =&#34; application&#34;,您需要这样做:
${applicationScope.dataBean.currentDate}.
您可能不希望将该日期设置为应用程序范围,因此请删除scope =&#34; application&#34;来自这样的标签:
<jsp:useBean id="dateBean" class="business.DateBean" />
此外,您需要将您的类导入到JSP中,因此请将其放在顶部:
<%@ page import="business.DateBean" %>