好的,我正在调用这个自定义标记:
<%@ tag body-content="scriptless" import="java.util.*,com.serco.inquire.*,java.lang.*" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ attribute name="theID" required="true" %>
<%@ attribute name="aUser" required="true" %>
... do stuff with variables here...
将此代码放在.jsp文件中:
<inq:singleRec theID="${id}" aUser="${user}" />
和Tomcat告诉我:
/deviewview.jsp(32,4)无法找到属性的setter方法:aUser
(是的,这就是我上面发布的那条线)
soooo ..这次我错过了什么?
答案 0 :(得分:1)
你有驼峰案例属性名称“aUser”。它在开头有一个字符“a”,看起来JSTL / JSP在这种情况下找到setter“setAUser()”有问题。尝试将“aUser”更改为“user”或“theUser”。
答案 1 :(得分:0)
好的,我正在调用这个自定义标记:
你所拥有的不是自定义标签。这是一个标签文件。
<%@ tag body-content="scriptless" import="java.util.*,com.serco.inquire.*,java.lang.*" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ attribute name="theID" required="true" %>
<%@ attribute name="aUser" required="true" %>
... do stuff with variables here...
您已使用prefix = c作为标记。你的web.xml中是否也有标签定义?如果是这样,c可能已经在那里用于JSTL标记。如果是这种情况,您的标记文件和JSTL核心标记之间可能会发生冲突。
将此代码放在.jsp文件中:
<inq:singleRec theID="${id}" aUser="${user}" />
您在哪里定义了ing
?
答案 2 :(得分:0)
如果你将使用自定义标记,那将是因为属性“aUser”不存在于相应的标记类(bean)中。或者,您可能已经更改了bean,但忘记更改TLD。