Como evitar o uso de scriptlets na minha página JSP?

Foi-me dito que o uso de scriptlets (<% = ...%>) nas minhas páginas JSP não é uma ótima idéia.

Alguém com um pouco mais de experiência em java / jsp, pode me dar algumas dicas sobre como alterar esse código para que seja mais uma "melhor prática", qualquer que seja?

Este JSP é na verdade a minha página principal do decorador de sitemesh. Basicamente, meu web design possui uma faixa de guias e um submenu, e de alguma forma desejo destacar a guia atual e mostrar o submenu correto, observando o URI da solicitação atual.

<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %>

<html>
<head>
  <title>My Events - <decorator:title /></title>
  <link href="<%= request.getContextPath() %>/assets/styles.css" rel="stylesheet" type="text/css" />
</head>
<body>

<div class="tabs">
  <a 
    <%= request.getRequestURI().contains("/events/") ? "class='selected'" : "" %>
    href='<%= request.getContextPath() %>/events/Listing.action'>Events</a>
  <a 
    <%= request.getRequestURI().contains("/people/") ? "class='selected'" : "" %>
    href='<%= request.getContextPath() %>/people/Listing.action'>People</a>
</div>

<div class="submenu">
  <% if(request.getRequestURI().contains("/events/")) { %>
    <a href="Listing.action">List of Events</a>
    |<a href="New.action">New Event</a>
  <% } %>
  <% if(request.getRequestURI().contains("/people/")) { %>
    <a href="Listing.action">List of People</a>
    |<a href="New.action">New Person</a>
  <% } %>  
  &nbsp;
</div>

<div class="body">
  <decorator:body />
</div>

</body>
</html>

Obrigado a todos

questionAnswers(7)

yourAnswerToTheQuestion