Enum inside a JSP

You can simply check against the enum value as a string:

<c:if test="${foo.direction == 'ASC'}">...

It can be done like this I guess

<c:set var="ASC" value="<%=Direction.ASC%>"/>
<c:if test="${foo.direction == ASC}"></c:if>

the advantage is when we refactor it will reflect here too


You could implement the web-friendly text for a direction within the enum as a field:


<%@ page import="com.example.Direction" %>
...
<p>Direction is <%=foo.direction.getFriendlyName()%></p>
<% if (foo.direction == Direction.ASC) { %>
<p>That means you're going to heaven!</p>
<% } %>

but that mixes the view and the model, although for simple uses it can be view-independent ("Ascending", "Descending", etc).

Unless you don't like putting straight Java into your JSP pages, even when used for basic things like comparisons.

Tags:

Java

Jsp

Jstl