We've noticed that undeclared variables in JSP can cause really bad performance.

Look at the following sample code:

```
<c:if test="...">
    <c:set var="isSaleCategory" value="true"/>
</c:if>

<c:forEach items="${ARTICLES}" var="article" varStatus="status">
    <c:if test="${not empty articlePrice && (!isSaleCategory)}">

```

The code took 5-6 seconds to process and return a result.

If we initialize the variable first, the execution time drops to a few milliseconds:

```
<c:set var="isSaleCategory" value="false"/>

<c:if test="...">
    <c:set var="isSaleCategory" value="true"/>
</c:if>

<c:forEach items="${ARTICLES}" var="article" varStatus="status">
    <c:if test="${not empty articlePrice && (!isSaleCategory)}">

```

Now, we dont mind so much adding this code to initialize the variables, but the tricky part is finding them... On pages without loops we wont see the second+ response times, but under heavy load, of course this adds up to unnecessary load.

Is there a way to make JSP processing fail when it stumbles on uninitialized variables like above?