You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Thim Anneessens <t....@ictjob.be> on 2012/11/30 10:56:47 UTC
Inconsistency in Struts2 s:component parameters handling
Hello,
We are using Struts 2.3.1.2 and have noticed a strange behavior in
component parameter handling:
We have a component that uses both an "id" parameter and a "title"
parameter.
What is strange is that when we use s:component, the "title" parameter
value can either be specified using the "title" attribute of s:component
or a s:param. The "id" parameter value can only be specified using the
"id" attribute of s:component. Using the s:param for "id" has no effect.
There seems to be no pertinent explanation for this behavior in the
documentation and I was wondering if this behavior would evolve in
further versions. We are currently using s:param to specify our numerous
"title" parameters and hope that it will always be possible in the future.
Could anyone shed some light on this inconsistent behavior?
Best regards,
--
*Thim Anneessens
IT Department *
ictjob group
ictjob.be <http://www.ictjob.be>
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris ticjob.es <http://www.ticjob.es>
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid ictjob.de <http://www.ictjob.de>
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
Re: Inconsistency in Struts2 s:component parameters handling
Posted by Lukasz Lenart <lu...@apache.org>.
Finally I have had some time to check that and the problem is in
UIBean#escape(String) method, line 884, which will return "" instead null
if provided String is null. Please register an issue for that.
Regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
2012/12/6 Thim Anneessens <t....@ictjob.be>
> Hi Lukasz,
>
> Here is a little maven project to illustrate the issue. Simply launch it
> with tomcat7 and you will see the issue.
> It also illustrates that id has a default value of "".
>
> Thank you for your time,
> Thim.
>
> On 12/03/2012 10:11 PM, Lukasz Lenart wrote:
>
> 2012/11/30 Thim Anneessens <t....@ictjob.be> <t....@ictjob.be>
>
> We are using Struts 2.3.1.2 and have noticed a strange behavior in
> component parameter handling:
>
> We have a component that uses both an "id" parameter and a "title"
> parameter.
>
> What is strange is that when we use s:component, the "title" parameter
> value can either be specified using the "title" attribute of s:component or
> a s:param. The "id" parameter value can only be specified using the "id"
> attribute of s:component. Using the s:param for "id" has no effect.
>
> There seems to be no pertinent explanation for this behavior in the
> documentation and I was wondering if this behavior would evolve in further
> versions. We are currently using s:param to specify our numerous "title"
> parameters and hope that it will always be possible in the future.
>
> Could anyone shed some light on this inconsistent behavior?
>
> It's a bit strange, it should also work the same way :\ Could you
> prepare a sample app ? Maven based ?
>
>
> Regards
> --
> Łukasz+ 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
>
> --
> * Thim Anneessens
> IT Department *
>
> [image: ictjob group]
>
> ictjob.be <http://www.ictjob.be>
> Tel: +32 2 725 73 00
> Terhulpsesteenweg, 6B
> B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
> Tel: +352 621 364 792
> 12, rue Eugène Ruppert
> L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
> Tel: +33 9 81 25 19 66
> 19 rue Martel
> 75010 Paris ticjob.es <http://www.ticjob.es>
> Tel: +34 911 25 43 11
> Calle Santo Tomé 4, 5B
> 28004 Madrid ictjob.de <http://www.ictjob.de>
> Tel: +49 711 91 41 07 32
> Humboldtstr. 32
> 70771 Leinfelden-Echterdingen
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
Re: Inconsistency in Struts2 s:component parameters handling
Posted by Thim Anneessens <t....@ictjob.be>.
Hi Lukasz,
Here is a little maven project to illustrate the issue. Simply launch it
with tomcat7 and you will see the issue.
It also illustrates that id has a default value of "".
Thank you for your time,
Thim.
On 12/03/2012 10:11 PM, Lukasz Lenart wrote:
> 2012/11/30 Thim Anneessens <t....@ictjob.be>
>> We are using Struts 2.3.1.2 and have noticed a strange behavior in
>> component parameter handling:
>>
>> We have a component that uses both an "id" parameter and a "title"
>> parameter.
>>
>> What is strange is that when we use s:component, the "title" parameter
>> value can either be specified using the "title" attribute of s:component or
>> a s:param. The "id" parameter value can only be specified using the "id"
>> attribute of s:component. Using the s:param for "id" has no effect.
>>
>> There seems to be no pertinent explanation for this behavior in the
>> documentation and I was wondering if this behavior would evolve in further
>> versions. We are currently using s:param to specify our numerous "title"
>> parameters and hope that it will always be possible in the future.
>>
>> Could anyone shed some light on this inconsistent behavior?
> It's a bit strange, it should also work the same way :\ Could you
> prepare a sample app ? Maven based ?
>
>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
--
*Thim Anneessens
IT Department *
ictjob group
ictjob.be <http://www.ictjob.be>
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris ticjob.es <http://www.ticjob.es>
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid ictjob.de <http://www.ictjob.de>
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
Re: Inconsistency in Struts2 s:component parameters handling
Posted by Lukasz Lenart <lu...@apache.org>.
2012/11/30 Thim Anneessens <t....@ictjob.be>
> We are using Struts 2.3.1.2 and have noticed a strange behavior in
> component parameter handling:
>
> We have a component that uses both an "id" parameter and a "title"
> parameter.
>
> What is strange is that when we use s:component, the "title" parameter
> value can either be specified using the "title" attribute of s:component or
> a s:param. The "id" parameter value can only be specified using the "id"
> attribute of s:component. Using the s:param for "id" has no effect.
>
> There seems to be no pertinent explanation for this behavior in the
> documentation and I was wondering if this behavior would evolve in further
> versions. We are currently using s:param to specify our numerous "title"
> parameters and hope that it will always be possible in the future.
>
> Could anyone shed some light on this inconsistent behavior?
It's a bit strange, it should also work the same way :\ Could you
prepare a sample app ? Maven based ?
Regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
RE: Inconsistency in Struts2 s:component parameters handling
Posted by Martin Gainty <mg...@hotmail.com>.
ok so your take is i want to reference a HTML component to uniquely identify a component in lieu of idso we're on the same page the HTML spec says The id
attribute assigns a unique
identifier to an element (which may be verified by an SGML parser).
For example, the following paragraphs are distinguished by their id values:
<P id="myparagraph"> This is a uniquely named paragraph.</P>
<P id="yourparagraph"> This is also a uniquely named paragraph.</P>
The id attribute has several roles in
HTML:
As a style sheet selector.
As a target anchor for hypertext links.
As a means to reference a particular element from a script.
As the name of a declared OBJECT element.
For general purpose processing by user agents (e.g. for identifying fields
when extracting data from HTML pages into a database, translating HTML documents
into other formats, etc.). Unique quality of id attributehow else can the User-Agent Browser uniquely refer to a element in a document if you do not have an id...
Suitable alternatives to replace unique idHow would an optional request parameter (such as title) be used to uniquely reference a component (instead of referring to unique identifier attribute)
http://www.w3.org/TR/html401/struct/global.html#h-7.5.2
Martin Gainty
______________________________________________
Jogi és Bizalmassági kinyilatkoztatás/Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Ez az
üzenet bizalmas. Ha nem ön az akinek szánva volt, akkor kérjük, hogy
jelentse azt nekünk vissza. Semmiféle továbbítása vagy másolatának
készítése nem megengedett. Ez az üzenet csak ismeret cserét szolgál és
semmiféle jogi alkalmazhatósága sincs. Mivel az electronikus üzenetek
könnyen megváltoztathatóak, ezért minket semmi felelöség nem terhelhet
ezen üzenet tartalma miatt.
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Fri, 30 Nov 2012 17:36:19 +0100
From: t.anneessens@ictjob.be
To: user@struts.apache.org
CC: mgainty@hotmail.com; w.ghafir@ictjob.be
Subject: Re: Inconsistency in Struts2 s:component parameters handling
Dear Martin,
According to struts
documentation: "id" is not required. However it
seems that even if I do not specify a value for "id", Struts will
assign an empty String value to it, which would prove what you are
saying. Maybe the documentation should be adapted to indicate that
id is required and that it has a default value which is an empty
string.
I note that if a parameter value is specified using both an
attribute and the param tag, the attribute value will be used.
This would explain the behavior we are observing for "id".
Assuming all this is right, I do not think that it should
influence the way to use s:component. IMO, the fact that a
default value is assigned to a parameter should not impact the
way we can specify/override the parameter value.
Given all these facts, is it reasonable to assume that this
behavior will not change in future Struts releases?
Thanks again for your time Martin.
Best regards,
Thim.
On 11/30/2012 03:42 PM, Martin Gainty wrote:
correct..
ID is a required attribute of the component tag
title is a parameter scoped at request level which will
be suffixed for the call to your Action e.g.
YourAction?title='title'
since ID is already a required attribute for every component it
would not make sense to *also add ID as the more
generalised request parameter*
(since ID is already specified as the required attribute for the
component)
Make cents?
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de
confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der
vorgesehene Empfaenger sein, so bitten wir hoeflich um eine
Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer
Kopie ist unzulaessig. Diese Nachricht dient lediglich dem
Austausch von Informationen und entfaltet keine rechtliche
Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Fri, 30 Nov 2012 14:20:42 +0100
From: t.anneessens@ictjob.be
To: mgainty@hotmail.com; user@struts.apache.org;
w.ghafir@ictjob.be
Subject: Re: Inconsistency in Struts2 s:component parameters
handling
Hi Martin,
Thank you for your time but I am not sure that it answers my
question. Here is some code to illustrate:
This works:
<s:component template='HighlightPanel.jsp' id="newsletter-subscribe-box">
<s:param name="title">Welcome to our site</s:param>
....
</s:component>
This does not work:
<s:component template='HighlightPanel.jsp'>
<s:param name="title">Welcome to our site</s:param>
<s:param name="id">newsletter-subscribe-box</s:param>
...
</s:component>
The "id" parameter is not sent to the "HighlightPanel.jsp"
component.
In the s:component documentation, there seems
to be no distinction between the "title" parameter and the
"id" parameter. Why this inconsistent behavior? Could this
behavior change in future releases?
Best regard,
Thim Anneessens.
On 11/30/2012 01:56 PM, Martin Gainty wrote:
<s:url var="url" action="Welcome">
<s:param name="request_locale">en</s:param>
</s:url>
<s:a href="%{url}">English</s:a>
This param tag will
1)add the parameter
"?request_locale=en" to the Welcome Action
URL, and
2)store it under the name "url".
The a tag then injects the "url" reference into
the hyperlink. This request_locale parameter will be
picked up by the I18n Interceptor, and change your
Locale accordingly.
Any number of parameters can be added to the URI by
adding more param tags.
the Struts doc explanation appears to be clear on the use
of params to build out the parameter(s) list
http://struts.apache.org/2.0.11.2/docs/using-tags.html
so in your case title would be request scoped
id would not be request scope since every component would
require an id
does this conform to your understanding
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de
confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der
vorgesehene Empfaenger sein, so bitten wir hoeflich um
eine Mitteilung. Jede unbefugte Weiterleitung oder
Fertigung einer Kopie ist unzulaessig. Diese Nachricht
dient lediglich dem Austausch von Informationen und
entfaltet keine rechtliche Bindungswirkung. Aufgrund der
leichten Manipulierbarkeit von E-Mails koennen wir keine
Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Fri, 30 Nov 2012 10:56:47
+0100
From: t.anneessens@ictjob.be
To: user@struts.apache.org
Subject: Inconsistency in Struts2 s:component parameters
handling
Hello,
We are using Struts 2.3.1.2 and have noticed a strange
behavior in component parameter handling:
We have a component that uses both an "id" parameter and
a "title" parameter.
What is strange is that when we use s:component, the
"title" parameter value can either be specified using
the "title" attribute of s:component or a s:param. The
"id" parameter value can only be specified using the
"id" attribute of s:component. Using the s:param for
"id" has no effect.
There seems to be no pertinent explanation for this
behavior in the documentation and I was wondering if
this behavior would evolve in further versions. We are
currently using s:param to specify our numerous "title"
parameters and hope that it will always be possible in
the future.
Could anyone shed some light on this inconsistent
behavior?
Best regards,
--
Thim Anneessens
IT Department
ictjob.be
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart
ictjob.lu
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg
jobtic.fr
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris
ticjob.es
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid
ictjob.de
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
--
Thim
Anneessens
IT Department
ictjob.be
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart
ictjob.lu
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg
jobtic.fr
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris
ticjob.es
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid
ictjob.de
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
--
Thim Anneessens
IT Department
ictjob.be
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart
ictjob.lu
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg
jobtic.fr
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris
ticjob.es
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid
ictjob.de
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
Re: Inconsistency in Struts2 s:component parameters handling
Posted by Thim Anneessens <t....@ictjob.be>.
Dear Martin,
According to struts documentation
<http://struts.apache.org/2.3.1/docs/component.html>: "id" is _not_
required. However it seems that even if I do not specify a value for
"id", Struts will assign an empty String value to it, which would prove
what you are saying. Maybe the documentation should be adapted to
indicate that id is required and that it has a default value which is an
empty string.
I note that if a parameter value is specified using both an attribute
and the param tag, the attribute value will be used. This would explain
the behavior we are observing for "id".
Assuming all this is right, I do not think that it should influence the
way to use s:component. IMO, the fact that a default value is assigned
to a parameter should not impact the way we can specify/override the
parameter value.
Given all these facts, is it reasonable to assume that this behavior
will not change in future Struts releases?
Thanks again for your time Martin.
Best regards,
Thim.
On 11/30/2012 03:42 PM, Martin Gainty wrote:
> correct..
> ID is a required attribute of the component tag
> title is a parameter scoped at request level which will
> be suffixed for the call to your Action e.g. YourAction?title='title'
>
> since ID is already a required attribute for every component it would
> not make sense to *also add ID as the more generalised request parameter*
> (since ID is already specified as the required attribute for the
> component)
>
> Make cents?
> Martin
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig.
> Diese Nachricht dient lediglich dem Austausch von Informationen und
> entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten
> Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den
> Inhalt uebernehmen.
>
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
>
>
>
> ------------------------------------------------------------------------
> Date: Fri, 30 Nov 2012 14:20:42 +0100
> From: t.anneessens@ictjob.be
> To: mgainty@hotmail.com; user@struts.apache.org; w.ghafir@ictjob.be
> Subject: Re: Inconsistency in Struts2 s:component parameters handling
>
> Hi Martin,
>
> Thank you for your time but I am not sure that it answers my question.
> Here is some code to illustrate:
>
> _This works:_
> <s:component template='HighlightPanel.jsp'*id="newsletter-subscribe-box"*>
> <s:param name="title">Welcome to our site</s:param>
> ....
> </s:component>
> _This does not work:_
> <s:component template='HighlightPanel.jsp'>
> <s:param name="title">Welcome to our site</s:param>
> * **<s:param name="id">newsletter-subscribe-box</s:param>*
> ...
> </s:component>
> The "id" parameter is not sent to the "HighlightPanel.jsp" component.
>
> In the s:component documentation
> <http://struts.apache.org/2.3.1/docs/component.html>, there seems to
> be no distinction between the "title" parameter and the "id"
> parameter. Why this inconsistent behavior? Could this behavior change
> in future releases?
>
> Best regard,
> Thim Anneessens.
>
>
> On 11/30/2012 01:56 PM, Martin Gainty wrote:
>
> <s:urlvar="url" action="Welcome">
> <s:param name="request_locale">en</s:param>
> </s:url>
> <s:a href="%{url}">English</s:a>
>
> This param tag will
> *1)add the* *parameter "?request_locale=en" to the Welcome Action
> URL, and *
> *2)store it under the name "url". *
> The a tag then injects the "url" reference into the hyperlink.
> This request_locale parameter will be picked up by the I18n
> Interceptor
> <http://struts.apache.org/2.0.11.2/docs/i18n-interceptor.html>,
> and change your Locale accordingly.
>
> /Any number of parameters can be added to the URI by adding more
> param tags./
>
> the Struts doc explanation appears to be clear on the use of
> params to build out the parameter(s) list
> http://struts.apache.org/2.0.11.2/docs/using-tags.html
>
> so in your case title would be request scoped
> id would not be request scope since every component would require
> an id
>
> does this conform to your understanding
> Martin
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de
> confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> unbefugte Weiterleitung oder Fertigung einer Kopie ist
> unzulaessig. Diese Nachricht dient lediglich dem Austausch von
> Informationen und entfaltet keine rechtliche Bindungswirkung.
> Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir
> keine Haftung fuer den Inhalt uebernehmen.
>
>
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
>
>
>
>
> ------------------------------------------------------------------------
> Date: Fri, 30 Nov 2012 10:56:47 +0100
> From: t.anneessens@ictjob.be <ma...@ictjob.be>
> To: user@struts.apache.org <ma...@struts.apache.org>
> Subject: Inconsistency in Struts2 s:component parameters handling
>
> Hello,
>
> We are using Struts 2.3.1.2 and have noticed a strange behavior in
> component parameter handling:
>
> We have a component that uses both an "id" parameter and a "title"
> parameter.
>
> What is strange is that when we use s:component, the "title"
> parameter value can either be specified using the "title"
> attribute of s:component or a s:param. The "id" parameter value
> can only be specified using the "id" attribute of s:component.
> Using the s:param for "id" has no effect.
>
> There seems to be no pertinent explanation for this behavior in
> the documentation and I was wondering if this behavior would
> evolve in further versions. We are currently using s:param to
> specify our numerous "title" parameters and hope that it will
> always be possible in the future.
>
> Could anyone shed some light on this inconsistent behavior?
>
> Best regards,
> --
> *Thim Anneessens
> IT Department *
>
> ictjob group
>
> ictjob.be <http://www.ictjob.be>
> Tel: +32 2 725 73 00
> Terhulpsesteenweg, 6B
> B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
> Tel: +352 621 364 792
> 12, rue Eugène Ruppert
> L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
> Tel: +33 9 81 25 19 66
> 19 rue Martel
> 75010 Paris ticjob.es <http://www.ticjob.es>
> Tel: +34 911 25 43 11
> Calle Santo Tomé 4, 5B
> 28004 Madrid ictjob.de <http://www.ictjob.de>
> Tel: +49 711 91 41 07 32
> Humboldtstr. 32
> 70771 Leinfelden-Echterdingen
>
>
>
> --
> *Thim Anneessens
> IT Department *
>
> ictjob group
>
> ictjob.be <http://www.ictjob.be>
> Tel: +32 2 725 73 00
> Terhulpsesteenweg, 6B
> B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
> Tel: +352 621 364 792
> 12, rue Eugène Ruppert
> L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
> Tel: +33 9 81 25 19 66
> 19 rue Martel
> 75010 Paris ticjob.es <http://www.ticjob.es>
> Tel: +34 911 25 43 11
> Calle Santo Tomé 4, 5B
> 28004 Madrid ictjob.de <http://www.ictjob.de>
> Tel: +49 711 91 41 07 32
> Humboldtstr. 32
> 70771 Leinfelden-Echterdingen
>
--
*Thim Anneessens
IT Department *
ictjob group
ictjob.be <http://www.ictjob.be>
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris ticjob.es <http://www.ticjob.es>
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid ictjob.de <http://www.ictjob.de>
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
RE: Inconsistency in Struts2 s:component parameters handling
Posted by Martin Gainty <mg...@hotmail.com>.
correct..ID is a required attribute of the component tag
title is a parameter scoped at request level which will be suffixed for the call to your Action e.g. YourAction?title='title'
since ID is already a required attribute for every component it would not make sense to *also add ID as the more generalised request parameter*(since ID is already specified as the required attribute for the component) Make cents?
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Fri, 30 Nov 2012 14:20:42 +0100
From: t.anneessens@ictjob.be
To: mgainty@hotmail.com; user@struts.apache.org; w.ghafir@ictjob.be
Subject: Re: Inconsistency in Struts2 s:component parameters handling
Hi Martin,
Thank you for your time but I am not sure that it answers my
question. Here is some code to illustrate:
This works:
<s:component template='HighlightPanel.jsp' id="newsletter-subscribe-box">
<s:param name="title">Welcome to our site</s:param>
....
</s:component>
This does not work:
<s:component template='HighlightPanel.jsp'>
<s:param name="title">Welcome to our site</s:param>
<s:param name="id">newsletter-subscribe-box</s:param>
...
</s:component>
The "id" parameter is not sent to the "HighlightPanel.jsp"
component.
In the s:component
documentation, there seems to be no distinction between the
"title" parameter and the "id" parameter. Why this inconsistent
behavior? Could this behavior change in future releases?
Best regard,
Thim Anneessens.
On 11/30/2012 01:56 PM, Martin Gainty wrote:
<s:url var="url" action="Welcome">
<s:param name="request_locale">en</s:param>
</s:url>
<s:a href="%{url}">English</s:a>
This param tag will
1)add the parameter
"?request_locale=en" to the Welcome Action URL,
and
2)store it under the name "url".
The a tag then injects the "url" reference into the
hyperlink. This request_locale parameter will be picked up by
the I18n
Interceptor, and change your Locale accordingly.
Any
number of parameters can be added to the URI by adding more
param tags.
the Struts doc explanation appears to be clear on the use of
params to build out the parameter(s) list
http://struts.apache.org/2.0.11.2/docs/using-tags.html
so in your case title would be request scoped
id would not be request scope since every component would
require an id
does this conform to your understanding
Martin
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de
confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der
vorgesehene Empfaenger sein, so bitten wir hoeflich um eine
Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer
Kopie ist unzulaessig. Diese Nachricht dient lediglich dem
Austausch von Informationen und entfaltet keine rechtliche
Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
Date: Fri, 30 Nov 2012 10:56:47 +0100
From: t.anneessens@ictjob.be
To: user@struts.apache.org
Subject: Inconsistency in Struts2 s:component parameters
handling
Hello,
We are using Struts 2.3.1.2 and have noticed a strange
behavior in component parameter handling:
We have a component that uses both an "id" parameter and a
"title" parameter.
What is strange is that when we use s:component, the "title"
parameter value can either be specified using the "title"
attribute of s:component or a s:param. The "id" parameter
value can only be specified using the "id" attribute of
s:component. Using the s:param for "id" has no effect.
There seems to be no pertinent explanation for this behavior
in the documentation and I was wondering if this behavior
would evolve in further versions. We are currently using
s:param to specify our numerous "title" parameters and hope
that it will always be possible in the future.
Could anyone shed some light on this inconsistent behavior?
Best regards,
--
Thim
Anneessens
IT Department
ictjob.be
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart
ictjob.lu
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg
jobtic.fr
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris
ticjob.es
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid
ictjob.de
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
--
Thim Anneessens
IT Department
ictjob.be
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart
ictjob.lu
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg
jobtic.fr
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris
ticjob.es
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid
ictjob.de
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen
Re: Inconsistency in Struts2 s:component parameters handling
Posted by Thim Anneessens <t....@ictjob.be>.
Hi Martin,
Thank you for your time but I am not sure that it answers my question.
Here is some code to illustrate:
_This works:_
<s:component template='HighlightPanel.jsp'*id="newsletter-subscribe-box"*>
<s:param name="title">Welcome to our site</s:param>
....
</s:component>
_This does not work:_
<s:component template='HighlightPanel.jsp'>
<s:param name="title">Welcome to our site</s:param>
* **<s:param name="id">newsletter-subscribe-box</s:param>*
...
</s:component>
The "id" parameter is not sent to the "HighlightPanel.jsp" component.
In the s:component documentation
<http://struts.apache.org/2.3.1/docs/component.html>, there seems to be
no distinction between the "title" parameter and the "id" parameter. Why
this inconsistent behavior? Could this behavior change in future releases?
Best regard,
Thim Anneessens.
On 11/30/2012 01:56 PM, Martin Gainty wrote:
> <s:urlvar="url" action="Welcome">
> <s:param name="request_locale">en</s:param>
> </s:url>
> <s:a href="%{url}">English</s:a>
>
> This param tag will
> *1)add the* *parameter "?request_locale=en" to the Welcome Action URL,
> and *
> *2)store it under the name "url". *
> The a tag then injects the "url" reference into the hyperlink. This
> request_locale parameter will be picked up by the I18n Interceptor
> <http://struts.apache.org/2.0.11.2/docs/i18n-interceptor.html>, and
> change your Locale accordingly.
>
> /Any number of parameters can be added to the URI by adding more param
> tags./
>
> the Struts doc explanation appears to be clear on the use of params to
> build out the parameter(s) list
> http://struts.apache.org/2.0.11.2/docs/using-tags.html
>
> so in your case title would be request scoped
> id would not be request scope since every component would require an id
>
> does this conform to your understanding
> Martin
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig.
> Diese Nachricht dient lediglich dem Austausch von Informationen und
> entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten
> Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den
> Inhalt uebernehmen.
>
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
>
>
>
> ------------------------------------------------------------------------
> Date: Fri, 30 Nov 2012 10:56:47 +0100
> From: t.anneessens@ictjob.be
> To: user@struts.apache.org
> Subject: Inconsistency in Struts2 s:component parameters handling
>
> Hello,
>
> We are using Struts 2.3.1.2 and have noticed a strange behavior in
> component parameter handling:
>
> We have a component that uses both an "id" parameter and a "title"
> parameter.
>
> What is strange is that when we use s:component, the "title" parameter
> value can either be specified using the "title" attribute of
> s:component or a s:param. The "id" parameter value can only be
> specified using the "id" attribute of s:component. Using the s:param
> for "id" has no effect.
>
> There seems to be no pertinent explanation for this behavior in the
> documentation and I was wondering if this behavior would evolve in
> further versions. We are currently using s:param to specify our
> numerous "title" parameters and hope that it will always be possible
> in the future.
>
> Could anyone shed some light on this inconsistent behavior?
>
> Best regards,
> --
> *Thim Anneessens
> IT Department *
>
> ictjob group
>
> ictjob.be <http://www.ictjob.be>
> Tel: +32 2 725 73 00
> Terhulpsesteenweg, 6B
> B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
> Tel: +352 621 364 792
> 12, rue Eugène Ruppert
> L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
> Tel: +33 9 81 25 19 66
> 19 rue Martel
> 75010 Paris ticjob.es <http://www.ticjob.es>
> Tel: +34 911 25 43 11
> Calle Santo Tomé 4, 5B
> 28004 Madrid ictjob.de <http://www.ictjob.de>
> Tel: +49 711 91 41 07 32
> Humboldtstr. 32
> 70771 Leinfelden-Echterdingen
>
--
*Thim Anneessens
IT Department *
ictjob group
ictjob.be <http://www.ictjob.be>
Tel: +32 2 725 73 00
Terhulpsesteenweg, 6B
B-1560 Hoeilaart ictjob.lu <http://www.ictjob.lu>
Tel: +352 621 364 792
12, rue Eugène Ruppert
L-2453 Luxembourg jobtic.fr <http://www.jobtic.fr>
Tel: +33 9 81 25 19 66
19 rue Martel
75010 Paris ticjob.es <http://www.ticjob.es>
Tel: +34 911 25 43 11
Calle Santo Tomé 4, 5B
28004 Madrid ictjob.de <http://www.ictjob.de>
Tel: +49 711 91 41 07 32
Humboldtstr. 32
70771 Leinfelden-Echterdingen