我是java web编程,servlet和JSTL的新手。 我要做的是如何从枚举中获取值并使用JSTL在我的jsp页面中进行一些验证;
这是我的枚举
package RenewalVo.common;
public enum RenewalConstant {
//MODUL_TASK
MT_REGISTRATION(46),
MT_DISTRIBUTION(47),
MT_ACTION_PLAN(70);
private int constantId;
private RenewalConstant(int s) {
constantId = s;
}
public int getConstantCode() {
return constantId;
}
}
这是我的jsp页面中的代码,让我们说一下validationpage.jsp
<c:choose>
<c:when test="${drafId!=0 }">
<c:choose>
<c:when test="${modulTaskId== //here is which i would like to get the enum value for validation}">
// do something here
</c:when>
<c:when test="${modulTaskId== //here is which i would like to get the enum value for validation}">
// do something here
</c:when>
<c:otherwise>
//do something here
</c:otherwise>
</c:choose>
</c:when>
</c:choose>
for draftId和modulTaskId我从servlet检索,然后通过RequestDispatcher转发。
这是我的servlet中的代码
request.setAttribute("modulTaskId",modulTaskId);
request.setAttribute("drafId",drafId);
RequestDispatcher view = request.getRequestDispatcher(/validationpage.jsp);
view.forward(request, response);
希望总和可以提供帮助。
提前谢谢。
答案 0 :(得分:1)
试试这个:
<c:when test="${modulTaskId=='MT_REGISTRATION'}">
</c:when>
(我假设moduleTaskId是RenewalConstant.MT_REGISTRATION的一个实例)
答案 1 :(得分:0)
您可以创建自定义JSP标记,然后使用类似
的内容<when test="${mytag:isAllowedSomething(modulTaskId)}" >
...
</when>