Dave, you were so right !

It was indeed not a String object that is returned by config.getProject(), but 
the value of an enum of type Project.
So I made that method returning a String instead, and it's working !

Thank you for your help.

But by curiosity, what does the OGNL espace do? Because, searching on forums, i 
saw many times that syntax, and tried it, but I never knew what it was for.

> Date: Fri, 24 Sep 2010 09:39:38 -0400
> Subject: Re: Incorrect test syntax
> From: davelnew...@gmail.com
> To: user@struts.apache.org
> 
> First I'd try wrapping the expression in the OGNL escape:
> 
> "%{config.project == 'dba2'}"
> 
> Then I'd try checking the type (class) of "config.project" and see if it's
> really a string.
> 
> Dave
> 
> On Fri, Sep 24, 2010 at 9:36 AM, Michaël JERUSALMI
> <michaelj...@hotmail.com>wrote:
> 
> >
> > Sorry, it didn't change a thing. It still goes by the else...
> >
> > > Date: Fri, 24 Sep 2010 22:32:04 +0900
> > > Subject: Re: Incorrect test syntax
> > > From: liying.cn.2...@gmail.com
> > > To: user@struts.apache.org
> > >
> > > Hi Michael:
> > >
> > > Maybe you can not check if a String has same content with another by the
> > > operator [==]. Try the method [String.equals()] instead.
> > >
> > > In your case, i think i should be:
> > >
> > > ....
> > > <s:if test="config.project.eqauls('dba2')">
> > > ....
> > >
> > >
> > > 2010/9/24 Michaël JERUSALMI <michaelj...@hotmail.com>
> > >
> > > >
> > > > Hi,
> > > > I'm working on a web application with Struts, made for several
> > projects,
> > > > and I'm trying to write a test to display (or not) a tab in case of a
> > > > particular project.
> > > >
> > > > I wrote a test, which positive result should be to add a new tab, and
> > which
> > > > negative result is to write the content of the ProjectName property.
> > > >
> > > > Here it is :
> > > >
> > > >    <s:if test="config.project == 'dba2'">
> > > >           <li><a href="#null" onclick="openReport('ia08');">Unsolved
> > > > Tickets</a></li>
> > > >    </s:if>
> > > >    <s:else>
> > > >           <s:property value="config.project" /> //config.project
> > contains
> > > > the value "dba2"
> > > >    </s:else>
> > > >
> > > > The result so far as always been to write the content of the value
> > > > config.project, ie dba2 instead of writing the expected tab.
> > > >
> > > > I've tried several syntax, including test="%{"config.project} ==
> > 'dba2'",
> > > > but nothing worked.
> > > >
> > > > Hoping you could help me.
> > > >
> > > > Michael
> > > >
> >
> >
                                          

Reply via email to