You're far better off with EL.
Eclipse cannot tell what is expected in the model (it isn't that clever) so cannot show an error.
In any case the fact that something the jsp expects isn't in the model is not an error as such. You just have to be careful to use the correct model keys.
You can always test for the objects existence in the jsp with:
Code:
<c:choose>
<c:when test="${not empty user.name}">
The name is ${user.name}
</c:when>
<c:otherwise>
Do something else
</c:otherwise>
</c:choose>
Using the scriptlet approach is indeed verbose.
Believe me you'll regret using them later as it can be a PITA to maintain.