tomcat-taglibs-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andy" <>
Subject c:choose not evaluating correctly
Date Mon, 30 May 2005 19:31:52 GMT

Hi All,

I have a menu in which I want to display a 'login' link when an object
called 'userSession' does not exist in the session scope, and a 'logout'
link when the 'userSession' object does exist in the seesion scope.

I'm using Struts, and the 'userSession' object is set in an Action.execute()
method when a form is submitted containing a valid username and password
i.e. -

        UserSession s = new UserSession();
        // Save the user session object

So I figure this is all I have to do is -

        <c:when test="${empty sessionScope.userSession}">
            <html:link action="/login"><bean:message
            <html:link action="/logout"><bean:message

However in the test case where I have not logged in, so the action that sets
the userSession object is not invoked, this doesn't work as expected. The
else part is always evaluated, indicating that sessionScope.userSession
isn't empty when I know it is! If I print out an attribute of the
userSession object -

<jsp:getProperty name="userSession" property="username"></jsp:getProperty>

I get 'null' displayed - this is correct because the userSession object
doesn't exist, but the c:choose doesn't evaluate correctly.

Clearly I'm doing something wrong, but I just can't see what it is, or even
if it's a JSTL issue.



To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message