Dúvida <c:when> JSTL

Estou tentando fazer usar o <c:when> logo abaixo, mas não ta dando certo, ele só faz o teste da ( var1 eq var2 ).

&lt;c:when test="${ ( var1 eq var2 ) eq (var3 eq var4) }"&gt;

Alguem pode me ajudar? É correto usar o <c:when> desse jeito?

Não seria?

<c:choose> <c:when test="${(var1 == var2) == (var3 == var4)}"> OK </c:when> </c:choose>
Qual a lógica de var1, var2, var3 e var4 serem iguais? Não consegui captar a idéia…

E isso mesmo, vi esse vacilo meu. É and ou or.

Mas mesmo assim não funcionou!

Ele esta fazendo o teste só no var1 eq var2.

Muito estranho.