我的jsp页面相识无效,本来因该显示具体的值,但是显示的是如下类容
编号 原因 创建时间 天数 状态 相关操作
${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请 页面代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<!-- 模板页面 -->
<%@include file="/public/commons.jsp" %>
<title>用户请假单集合页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<input type="button" name="flush" id="flush" value="刷新列表"
onclick="javascript:window.navigate('flushAction.action');"/>
<c:if test="${user.position != '老板'}">
请假单列表(My)
<table>
<tr>
<td>编号</td>
<td>原因</td>
<td>创建时间</td>
<td>天数</td>
<td>状态</td>
<td>相关操作</td>
</tr>
<c:forEach items="${list}" var="leave">
<tr>
<td>${leave.leaveId }</td>
<td>${leave.content }</td>
<td><fmt:formatDate value="${leave.applyTime }" type="both" pattern="yyyy-MM-dd"/></td>
<td>${leave.day }</td>
<td>${leave.status }</td>
<td><c:if test="${leave.status == '新建'}">
<a href="deleteLeave.action?leaevId=${leave.leaveId}">删除</a>
<a href="applyLeave.action?leaevId=${leave.leaveId}">申请</a>
</c:if>
</td>
</tr>
</c:forEach>
</table>
我查看过数据库,数据库表里面是有具体值的,请问一下这是什么原因?
编号 原因 创建时间 天数 状态 相关操作
${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请 页面代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<!-- 模板页面 -->
<%@include file="/public/commons.jsp" %>
<title>用户请假单集合页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<input type="button" name="flush" id="flush" value="刷新列表"
onclick="javascript:window.navigate('flushAction.action');"/>
<c:if test="${user.position != '老板'}">
请假单列表(My)
<table>
<tr>
<td>编号</td>
<td>原因</td>
<td>创建时间</td>
<td>天数</td>
<td>状态</td>
<td>相关操作</td>
</tr>
<c:forEach items="${list}" var="leave">
<tr>
<td>${leave.leaveId }</td>
<td>${leave.content }</td>
<td><fmt:formatDate value="${leave.applyTime }" type="both" pattern="yyyy-MM-dd"/></td>
<td>${leave.day }</td>
<td>${leave.status }</td>
<td><c:if test="${leave.status == '新建'}">
<a href="deleteLeave.action?leaevId=${leave.leaveId}">删除</a>
<a href="applyLeave.action?leaevId=${leave.leaveId}">申请</a>
</c:if>
</td>
</tr>
</c:forEach>
</table>
我查看过数据库,数据库表里面是有具体值的,请问一下这是什么原因?
看看
要配置在2.4以上!
1楼加上去报:According to TLD or attribute directive in tag file, attribute value does not accept any expressions ,我的版本为2.3我如果这样写:
<c:forEach items="${list}" var="leave">
<c:out value="${leave}"></c:out>
<tr>
<td>${leave.leaveId }</td>
<td>${leave.content }</td>
<td><fmt:formatDate value="${leave.applyTime }" type="both" pattern="yyyy-MM-dd"/></td>
<td>${leave.day }</td>
<td>${leave.status }</td>
<td><c:if test="${leave.status == '新建'}">
<a href="deleteLeave.action?leaevId=${leave.leaveId}">删除</a>
<a href="applyLeave.action?leaevId=${leave.leaveId}">申请</a>
</c:if>
</td>
</tr>
</c:forEach>
输出结果为:
编号 原因 创建时间 天数 状态 相关操作
请假天数null 申请时间2010-07-29 00:00:00.0 请假原因null 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数null 申请时间2010-07-29 00:00:00.0 请假原因null 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数2 申请时间2010-07-29 00:00:00.0 请假原因dsf 状态vc ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status }
请假天数2 申请时间2010-07-29 00:00:00.0 请假原因ds 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数3 申请时间2010-07-29 00:00:00.0 请假原因fgfff 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数3 申请时间2010-07-29 00:00:00.0 请假原因fgf 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数7 申请时间2010-07-29 00:00:00.0 请假原因vj 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数7 申请时间2010-07-29 00:00:00.0 请假原因fgg 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数3 申请时间2010-07-29 00:00:00.0 请假原因ss 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数2 申请时间2010-07-29 00:00:00.0 请假原因55 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数3 申请时间2010-07-29 00:00:00.0 请假原因yy 状态新建 ${leave.leaveId } ${leave.content } 2010-07-29 ${leave.day } ${leave.status } 删除 申请
请假天数4 申请时间Thu Jul 29 11:06:29 CST 2010 请假原因赫赫 状态新建
<td><c:out value="${leave.leaveId }"></c:out></td>
几个out输出
但是后面的超链接
<a href="deleteLeave.action?leaevId=${leave.leaveId}">删除</a>
<a href="applyLeave.action?leaevId=${leave.leaveId}">申请</a>
也不能解析,这里要怎么传值呢
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
这个有错
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>LZ用这个试试
用这个整个页面都没有内容了,就剩下一个submit按钮了
就好比这样:
后台:
List<T> leave=XXService.getTList<T>();
request.setAttribute("leave",leave);
如果不行,可以加上<%@page isELIgnored="false" %>看看。
然后看看你的变量的存取范围,也可以用jsp表达式看看
分析一下应该就能找到原因的
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
换成:
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jstl/fmt_rt" prefix="fmt" %>