我在jsp-web应用程序中使用显示标记库来显示以下应用程序用户:
<display:table name="requestScope.users" pagesize="5" requestURI=""
export="true" sort="list" uid="one" keepStatus = "true">
<display:column property="lastName" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="firstName" title="First Name"
sortable="true" headerClass="sortable" />
<display:column property="userName" title="Username"
sortable="true" headerClass="sortable" />
<display:column property="emailAddress" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="userType" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="userID" title="ID" autolink="true" href="${pageContext.request.contextPath}/deleteUser?userID=${user.userID}"
sortable="true" headerClass="sortable" />
</display:table>
我正在使用最后一个显示:column元素作为我的servlet的链接,并尝试将userID作为参数传递给它。虽然访问了servlet,但在尝试使用表达式语言时不会传递参数!知道我怎么能让这个东西上班吗?
使用:jdk-7u51 Windows7 Tomcat 7.0.52 Netbeans 7.4 Oracle XE11g2
答案 0 :(得分:0)
在徘徊之后,注意到很多人都有同样的问题。 很可惜,上面生成的表将始终作为参数传递给用户列表中的第一个userId。
有两种建议的解决方案可以使用displaytag生成动态链接,如下所示:
http://demo.displaytag.org/displaytag-examples-1.1/example-decorator-link.jsp
使用类似struts的方法我添加了'paramId'和'paramProperty',如下所示
<display:table name="${users}" pagesize="5" requestURI=""
export="true" sort="list" uid="one" keepStatus = "true">
<display:column property="lastName" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="firstName" title="First Name"
sortable="true" headerClass="sortable" />
<display:column property="userName" title="Username"
sortable="true" headerClass="sortable" />
<display:column property="emailAddress" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="userType" title="Last Name"
sortable="true" headerClass="sortable" />
<display:column property="userID" title="ID" autolink="true" paramId="userID" paramProperty="userID" href="${pageContext.request.contextPath}/deleteUser"
sortable="true" headerClass="sortable" />
</display:table>
并将正确的值传递给servlet。希望这有助于其他人