我的项目所有属性都是大写字母开头,对应数据库的字段也是如此。页面中对象的属性也用大写。本来都没事的,今天弄了个上传下载的功能,在下载的页面中,我用了c标签,代码如下:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
。。
<c:forTokens var="token" items="${resource.resourceURL}" delims=";" varStatus="status" >
<a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.resourceID}">${fn:split(token,"?")[1]}</a>
<br/>
</c:forTokens>
怪就怪在这里,我的实体bean,数据库属性都是大写开头,可是页面中这两个属性用了小写开头反而没事,功能正常。这两个属性一用和后台一致的大写开头页面马上出错,出错信息如下:
exception javax.servlet.ServletException: org.apache.jasper.JasperException: An exception occurred processing JSP page /files/admin/resource/detailDownLoadResourceInfo.jsp at line 164161: <tr>
162: <td height="20" align="center" bgcolor="#FFFFFF">璧勬簮涓嬭浇:</td>
163: <td bgcolor="#FFFFFF"><s:if test="resource.resourceURL!=null"></s:if>
164: <c:forTokens var="token" items="${resource.ResourceURL}" delims=";" varStatus="status" >
165: <a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.ResourceID}">${fn:split(token,"?")[1]}</a>
166: <br/>
167: </c:forTokens>
Stacktrace:
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:422)
root cause org.apache.jasper.JasperException: An exception occurred processing JSP page /files/admin/resource/detailDownLoadResourceInfo.jsp at line 164161: <tr>
162: <td height="20" align="center" bgcolor="#FFFFFF">璧勬簮涓嬭浇:</td>
163: <td bgcolor="#FFFFFF"><s:if test="resource.resourceURL!=null"></s:if>
164: <c:forTokens var="token" items="${resource.ResourceURL}" delims=";" varStatus="status" >
165: <a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.ResourceID}">${fn:split(token,"?")[1]}</a>
166: <br/>
167: </c:forTokens> 不知是什么问题,请高手指点迷津!
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
。。
<c:forTokens var="token" items="${resource.resourceURL}" delims=";" varStatus="status" >
<a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.resourceID}">${fn:split(token,"?")[1]}</a>
<br/>
</c:forTokens>
怪就怪在这里,我的实体bean,数据库属性都是大写开头,可是页面中这两个属性用了小写开头反而没事,功能正常。这两个属性一用和后台一致的大写开头页面马上出错,出错信息如下:
exception javax.servlet.ServletException: org.apache.jasper.JasperException: An exception occurred processing JSP page /files/admin/resource/detailDownLoadResourceInfo.jsp at line 164161: <tr>
162: <td height="20" align="center" bgcolor="#FFFFFF">璧勬簮涓嬭浇:</td>
163: <td bgcolor="#FFFFFF"><s:if test="resource.resourceURL!=null"></s:if>
164: <c:forTokens var="token" items="${resource.ResourceURL}" delims=";" varStatus="status" >
165: <a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.ResourceID}">${fn:split(token,"?")[1]}</a>
166: <br/>
167: </c:forTokens>
Stacktrace:
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:422)
root cause org.apache.jasper.JasperException: An exception occurred processing JSP page /files/admin/resource/detailDownLoadResourceInfo.jsp at line 164161: <tr>
162: <td height="20" align="center" bgcolor="#FFFFFF">璧勬簮涓嬭浇:</td>
163: <td bgcolor="#FFFFFF"><s:if test="resource.resourceURL!=null"></s:if>
164: <c:forTokens var="token" items="${resource.ResourceURL}" delims=";" varStatus="status" >
165: <a href="DownLoadResource.action?file=${fn:split(token,'?')[0]}&ResourceID=${resource.ResourceID}">${fn:split(token,"?")[1]}</a>
166: <br/>
167: </c:forTokens> 不知是什么问题,请高手指点迷津!
如果是你上面写的那种情况。我估计你的实体方法是
public String getResourceURL(....)..你看下实体中的这个是不是这样弄的
是啊,我的实体:
private Integer ResourceID;
private String ResourceURL;
public String getResourceURL() {
return ResourceURL;
}
public void setResourceURL(String resourceURL) {
ResourceURL = resourceURL;
}
public Integer getResourceID() {
return ResourceID;
}
public void setResourceID(Integer resourceID) {
ResourceID = resourceID;
}
和我讲讲el取名的原理吧!