You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Roberto Nunnari <ro...@supsi.ch> on 2008/06/19 09:23:39 UTC
validation and action names with slashes
Hello.
I'd like to use declarative Action-alias field validation for
several Actions/methods in my S2 webpapp.
S2 let's me do in struts.xml elegant things like:
<package name="admin" extends="tiles-default" namespace="/admin">
...
<action name="*/*" method="{2}" class="mypkg.admin.{1}Action">
.. my results..
</action>
...
</package>
and then use it in my jsps:
<s:url action="Category/create" namespace="/admin" id="newURL"/>
..but in order to add declarative validation, that would require
a file named:
CategoryAction/create-validation.xml
but '/' is not a character allowed in filenames.
How to go with this dilemma? Should I drop the slashes in
action names and use more verbose and less flexible declarations
in struts.xml, or is there a better way?
Thank you!
--
Robi
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [struts] validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Hi Dale.
Thank you for your answer. See my comments below.
--
Robi
Dale Newfield wrote:
> Roberto Nunnari wrote:
>>> ..but in order to add declarative validation, that would require
>>> a file named:
>>> CategoryAction/create-validation.xml
Oops.. little typo! That should read:
CategoryAction-Category/create-validation.xml
>>>
>>> but '/' is not a character allowed in filenames.
>
> Did you actually try putting the validation file at
> CategoryAction/create-validation.xml (i.e.: in a subdirectory)?
Given the above correction, your suggestion is not possible
because the '-' character is not valid in java package names.
>
> If that works, or if can be made to work, is that a reasonable solution
> for you?
>
> -Dale
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [struts] validation and action names with slashes
Posted by Dale Newfield <Da...@Newfield.org>.
Roberto Nunnari wrote:
>> ..but in order to add declarative validation, that would require
>> a file named:
>> CategoryAction/create-validation.xml
>>
>> but '/' is not a character allowed in filenames.
Did you actually try putting the validation file at
CategoryAction/create-validation.xml (i.e.: in a subdirectory)?
If that works, or if can be made to work, is that a reasonable solution
for you?
-Dale
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Anybody on this, please?
--
Robi
Roberto Nunnari wrote:
> Hello.
>
> I'd like to use declarative Action-alias field validation for
> several Actions/methods in my S2 webpapp.
>
> S2 let's me do in struts.xml elegant things like:
> <package name="admin" extends="tiles-default" namespace="/admin">
> ...
> <action name="*/*" method="{2}" class="mypkg.admin.{1}Action">
> .. my results..
> </action>
> ...
> </package>
>
> and then use it in my jsps:
> <s:url action="Category/create" namespace="/admin" id="newURL"/>
>
> ..but in order to add declarative validation, that would require
> a file named:
> CategoryAction/create-validation.xml
>
> but '/' is not a character allowed in filenames.
>
> How to go with this dilemma? Should I drop the slashes in
> action names and use more verbose and less flexible declarations
> in struts.xml, or is there a better way?
>
> Thank you!
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>> Jeromy Evans wrote:
>>> Roberto Nunnari wrote:
>>>
>>> This is what I intend to do. At the moment the CodeBehind/Convention
>>> plugin estimates the name of view candidates (eg.
>>> package-action-result.jsp)
>>> This change would just need to extend that to check if a tile exists
>>> with that name.
>>>
>>> This change will mean that @Result's are only required for the
>>> exceptional cases (those results that need to break the Tiles naming
>>> convention).
>>>
>>
>> Yes! That would be great!
>> Are you going to do the coding yourself?
>>
> Yes, it's on my todo list.
>
If I get round to, I may look into the code myself..
I'd be glad to contribute to struts.
--
Robi
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Jeromy Evans <je...@blueskyminds.com.au>.
Roberto Nunnari wrote:
> Jeromy Evans wrote:
>> Roberto Nunnari wrote:
>>
>> This is what I intend to do. At the moment the CodeBehind/Convention
>> plugin estimates the name of view candidates (eg.
>> package-action-result.jsp)
>> This change would just need to extend that to check if a tile exists
>> with that name.
>>
>> This change will mean that @Result's are only required for the
>> exceptional cases (those results that need to break the Tiles naming
>> convention).
>>
>
> Yes! That would be great!
> Are you going to do the coding yourself?
>
Yes, it's on my todo list.
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>>
>>
>> Maybe the convention plugin should look into the tiles.xml
>> file, or check to see if the tiles plugin or tiles listener
>> are in the game..
>> Most probably, the definition names in tiles.xml should
>> follow the conventions, so that
>> <definition name="auctionView"..
>> becomes
>> <definition name="auction"
>> and
>> <definition name="auctionInput"..
>> becomes
>> <definition name="auction-input"
>> etc..
>
> This is what I intend to do. At the moment the CodeBehind/Convention
> plugin estimates the name of view candidates (eg.
> package-action-result.jsp)
> This change would just need to extend that to check if a tile exists
> with that name.
>
> This change will mean that @Result's are only required for the
> exceptional cases (those results that need to break the Tiles naming
> convention).
>
Yes! That would be great!
Are you going to do the coding yourself?
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: Using Struts2 Template
Posted by Dave Newton <ne...@yahoo.com>.
--- On Sun, 6/22/08, Doug Pham <do...@yahoo.com> wrote:
> Do you have to add anything to the web.xml file or
> what libraries to include.
I still don't know what templates you're talking about, so I don't know.
S2 is already dependent on FreeMarker; you don't need to do anything special other than make sure FreeMarker and its dependencies end up deployed.
If you're talking about FreeMarker results, read the FreeMarker result type docs.
http://struts.apache.org/2.0.11.1/docs/freemarker-result.html
> If I am using Sitemesh, anything different I have to do?
Yes, read the docs about the SiteMesh plugin docs and do what it says.
http://struts.apache.org/2.0.11.1/docs/sitemesh-plugin.html
Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: Using Struts2 Template
Posted by Doug Pham <do...@yahoo.com>.
Dave,
Do you have to add anything to the web.xml file or what libraries to include. If I am using Sitemesh, anything different I have to do?
Doug Pham
--- On Sun, 6/22/08, Dave Newton <ne...@yahoo.com> wrote:
From: Dave Newton <ne...@yahoo.com>
Subject: Re: Using Struts2 Template
To: "Struts Users Mailing List" <us...@struts.apache.org>
Date: Sunday, June 22, 2008, 7:29 AM
--- On Sun, 6/22/08, Doug Pham <do...@yahoo.com> wrote:
> Do I have to include anything special to use the Freemarker templates?
"The" FreeMarker templates? Do you mean FreeMarker results? If so,
no. If not, not sure what you mean.
Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: Using Struts2 Template
Posted by Dave Newton <ne...@yahoo.com>.
--- On Sun, 6/22/08, Doug Pham <do...@yahoo.com> wrote:
> Do I have to include anything special to use the Freemarker templates?
"The" FreeMarker templates? Do you mean FreeMarker results? If so, no. If not, not sure what you mean.
Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Using Struts2 Template
Posted by Doug Pham <do...@yahoo.com>.
Hi All,
Do I have to include anything special to use the Freemarker templates?
Thanks,
Doug
Re: validation and action names with slashes
Posted by Jeromy Evans <je...@blueskyminds.com.au>.
Roberto Nunnari wrote:
>
>
> Maybe the convention plugin should look into the tiles.xml
> file, or check to see if the tiles plugin or tiles listener
> are in the game..
> Most probably, the definition names in tiles.xml should
> follow the conventions, so that
> <definition name="auctionView"..
> becomes
> <definition name="auction"
> and
> <definition name="auctionInput"..
> becomes
> <definition name="auction-input"
> etc..
This is what I intend to do. At the moment the CodeBehind/Convention
plugin estimates the name of view candidates (eg. package-action-result.jsp)
This change would just need to extend that to check if a tile exists
with that name.
This change will mean that @Result's are only required for the
exceptional cases (those results that need to break the Tiles naming
convention).
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Hi Martin.
I must admit that I have not thought about it at all, but
I'll try here to come up with something, and to tell you
how I use tiles.
I usually end up with a moderate long struts.xml a *very long*
tiles.xml (maybe that's not the best way to use tiles, but
it's the way I use it. Antonio, please add here if you wish..).
I use tiles in a way that I have all tiles predefined in
tiles.xml and all final page composition in a couple of
files (the template files). The template files have *all* the
<tiles:insertAttribute .../> tags, as this:
<tiles:insertAttribute name="header"/>
and all the other tiles never use insertAttribute again.
So, how could the convention plugin help with tiles?
I'd rather not use annotations at all for results mapping.
I don't know if it is already that way, but I believe that
instead of having to add annotations to override behaviour
the convention plugin should consider struts.xml and tiles.xml
If the above files have not a definition for the current request,
then use the convention, otherwise use that definition to
ovverride the behaviour.
Maybe the convention plugin should look into the tiles.xml
file, or check to see if the tiles plugin or tiles listener
are in the game..
Most probably, the definition names in tiles.xml should
follow the conventions, so that
<definition name="auctionView"..
becomes
<definition name="auction"
and
<definition name="auctionInput"..
becomes
<definition name="auction-input"
etc..
so that:
URL: /auction
translates to:
Action class: rootpkg.Auction
tile definition: auction (or auction-input if the result is input)
in order to optimise for applications that don't use tiles,
you could have a property in struts.properties that tells
the convention plugin to consider tiles or not, while
trying to determine the view for the request
so that if tiles should be considered,
in the order try: tiles, jsp, velocity, etc..
I hope this helps.
Best regards.
Robi
here's a little part of my tiles.xml
<definition name="mainLayout"
template="/WEB-INF/tiles/layouts/classicLayout.jsp">
<put-attribute name="title" value="myecommerce homepage" />
<put-attribute name="header" value="/WEB-INF/tiles/header.jsp" />
<put-attribute name="other" value="/WEB-INF/tiles/other.jsp" />
<put-attribute name="categories" value="/WEB-INF/tiles/categories.jsp" />
<put-attribute name="userMenu" value="/WEB-INF/tiles/userMenu.jsp" />
<put-attribute name="messages" value="/WEB-INF/tiles/messages.jsp" />
<put-attribute name="body" value="/WEB-INF/tiles/default_body.jsp" />
<put-attribute name="siteOwner" value="/WEB-INF/tiles/siteOwner.jsp" />
<put-attribute name="banners" value="/WEB-INF/tiles/banners.jsp" />
<put-attribute name="footer" value="/WEB-INF/tiles/footer.jsp" />
</definition>
<definition name="home" extends="mainLayout"
template="/WEB-INF/tiles/layouts/classicLayoutHome.jsp">
<put-attribute name="title" value="myecommerce home page" />
<put-attribute name="body" value="/WEB-INF/tiles/content/home.jsp" />
</definition>
<definition name="help" extends="home">
<put-attribute name="title" value="myecommerce help page" />
<put-attribute name="body" value="/WEB-INF/tiles/content/help.jsp" />
</definition>
<definition name="about" extends="home">
<put-attribute name="title" value="myecommerce about page" />
<put-attribute name="body" value="/WEB-INF/tiles/content/about.jsp" />
</definition>
<definition name="auctionView" extends="mainLayout">
<put-attribute name="title" value="View Auction" />
<put-attribute name="body"
value="/WEB-INF/tiles/content/auctionView.jsp" />
</definition>
Martin wrote:
> Roberto-
>
> Just to clarify..how should the Results mapping annotations
> configuration be introduced?
>
> Thanks
> Martin--
> ----- Original Message ----- From: "Roberto Nunnari"
> <ro...@supsi.ch>
> To: "Struts Users Mailing List" <us...@struts.apache.org>
> Sent: Saturday, June 21, 2008 7:25 PM
> Subject: Re: validation and action names with slashes
>
>
>> Jeromy Evans wrote:
>>> Roberto Nunnari wrote:
>>>> Hi Jeromy!
>>>>
>>>> The Convention plugin looks very interesting! Does it work
>>>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>>>
>>>> What about mixing it with tiles?
>>>> Would it require specifying tiles results thus breaking
>>>> the convenience of conventions?
>>>>
>>> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's
>>> still in the sandbox.
>>
>> WOW.. The convention plugin rocks! I like it!
>> I'm writing action classes and related jsps and struts finds the
>> right Action class and jsp without having to touch the struts.xml
>> I don't even have the struts.xml file!
>>
>> This is a very confortable way of writing web applications.
>>
>>
>>> It works with Tiles, but you have to explicitly declare each
>>> @Result(type=TilesResult.class,value="xxx") which I find really
>>> annoying (as you say, it breaks the convenience of the convention).
>>> I've been intending to raise that over at struts-dev, which I'll do now.
>>
>> Yes.. Please do. If it would support tiles, I'd start using
>> it right away, but like this, no way.
>>
>> I don't like the idea of having to define result mappings in java
>> source code.. and to say it all.. I don't like annotations,
>> although I admit that at times annotations are very useful. :-)
>>
>>
>> Best regards.
>> Robi
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>> For additional commands, e-mail: user-help@struts.apache.org
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Martin <mg...@hotmail.com>.
Roberto-
Just to clarify..how should the Results mapping annotations configuration be
introduced?
Thanks
Martin--
----- Original Message -----
From: "Roberto Nunnari" <ro...@supsi.ch>
To: "Struts Users Mailing List" <us...@struts.apache.org>
Sent: Saturday, June 21, 2008 7:25 PM
Subject: Re: validation and action names with slashes
> Jeromy Evans wrote:
>> Roberto Nunnari wrote:
>>> Hi Jeromy!
>>>
>>> The Convention plugin looks very interesting! Does it work
>>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>>
>>> What about mixing it with tiles?
>>> Would it require specifying tiles results thus breaking
>>> the convenience of conventions?
>>>
>> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's still
>> in the sandbox.
>
> WOW.. The convention plugin rocks! I like it!
> I'm writing action classes and related jsps and struts finds the
> right Action class and jsp without having to touch the struts.xml
> I don't even have the struts.xml file!
>
> This is a very confortable way of writing web applications.
>
>
>> It works with Tiles, but you have to explicitly declare each
>> @Result(type=TilesResult.class,value="xxx") which I find really annoying
>> (as you say, it breaks the convenience of the convention). I've been
>> intending to raise that over at struts-dev, which I'll do now.
>
> Yes.. Please do. If it would support tiles, I'd start using
> it right away, but like this, no way.
>
> I don't like the idea of having to define result mappings in java
> source code.. and to say it all.. I don't like annotations,
> although I admit that at times annotations are very useful. :-)
>
>
> Best regards.
> Robi
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>> Hi Jeromy!
>>
>> The Convention plugin looks very interesting! Does it work
>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>
>> What about mixing it with tiles?
>> Would it require specifying tiles results thus breaking
>> the convenience of conventions?
>>
> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's still
> in the sandbox.
WOW.. The convention plugin rocks! I like it!
I'm writing action classes and related jsps and struts finds the
right Action class and jsp without having to touch the struts.xml
I don't even have the struts.xml file!
This is a very confortable way of writing web applications.
> It works with Tiles, but you have to explicitly declare each
> @Result(type=TilesResult.class,value="xxx") which I find really annoying
> (as you say, it breaks the convenience of the convention). I've been
> intending to raise that over at struts-dev, which I'll do now.
Yes.. Please do. If it would support tiles, I'd start using
it right away, but like this, no way.
I don't like the idea of having to define result mappings in java
source code.. and to say it all.. I don't like annotations,
although I admit that at times annotations are very useful. :-)
Best regards.
Robi
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
built! going to experiment a bit.
Thank you and best regards.
--
Robi
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>> Jeromy Evans wrote:
>>> Roberto Nunnari wrote:
>>>> Hi Jeromy!
>>>>
>>>> The Convention plugin looks very interesting! Does it work
>>>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>>>
>>>> What about mixing it with tiles?
>>>> Would it require specifying tiles results thus breaking
>>>> the convenience of conventions?
>>>>
>>> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's
>>> still in the sandbox.
>>
>> should I take it from the sandbox then? just cd sandbox && mvn package?
>
> Yes.
>
> cd sandbox/struts-convention-plugin && mvn clean install
>
> You'll then be able to use struts-convention-plugin-2.1.3-SNAPSHOT in
> your test application.
>
> You may need to ensure the sandbox, struts2, xwork and
> struts-annotations are up-to-date though (but the build is broken at
> this moment)
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Jeromy Evans <je...@blueskyminds.com.au>.
Roberto Nunnari wrote:
> Jeromy Evans wrote:
>> Roberto Nunnari wrote:
>>> Hi Jeromy!
>>>
>>> The Convention plugin looks very interesting! Does it work
>>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>>
>>> What about mixing it with tiles?
>>> Would it require specifying tiles results thus breaking
>>> the convenience of conventions?
>>>
>> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's
>> still in the sandbox.
>
> should I take it from the sandbox then? just cd sandbox && mvn package?
Yes.
cd sandbox/struts-convention-plugin && mvn clean install
You'll then be able to use struts-convention-plugin-2.1.3-SNAPSHOT in
your test application.
You may need to ensure the sandbox, struts2, xwork and
struts-annotations are up-to-date though (but the build is broken at
this moment)
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>> Hi Jeromy!
>>
>> The Convention plugin looks very interesting! Does it work
>> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>>
>> What about mixing it with tiles?
>> Would it require specifying tiles results thus breaking
>> the convenience of conventions?
>>
> It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's still
> in the sandbox.
should I take it from the sandbox then? just cd sandbox && mvn package?
> It works with Tiles, but you have to explicitly declare each
> @Result(type=TilesResult.class,value="xxx") which I find really annoying
> (as you say, it breaks the convenience of the convention). I've been
> intending to raise that over at struts-dev, which I'll do now.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Jeromy Evans <je...@blueskyminds.com.au>.
Roberto Nunnari wrote:
> Hi Jeromy!
>
> The Convention plugin looks very interesting! Does it work
> with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
>
> What about mixing it with tiles?
> Would it require specifying tiles results thus breaking
> the convenience of conventions?
>
It works with 2.1.3-SNAPSHOT but isn't distributed with it as it's still
in the sandbox.
It works with Tiles, but you have to explicitly declare each
@Result(type=TilesResult.class,value="xxx") which I find really annoying
(as you say, it breaks the convenience of the convention). I've been
intending to raise that over at struts-dev, which I'll do now.
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Hi Jeromy!
The Convention plugin looks very interesting! Does it work
with 2.1.3-SNAPSHOT ? I'd like to give it a try this weekend.
What about mixing it with tiles?
Would it require specifying tiles results thus breaking
the convenience of conventions?
--
Robi
Jeromy Evans wrote:
> Roberto Nunnari wrote:
>>
>>
>> 2) action names with wildcards and '!' (ie '*!*') are not usable for
>> declarative action-alias validation. No idea why.
>>
> This works:
>
> <action name="manageAccount!*" method="do{1}"
> class="package.ManageAccountAction">
>
> matches the XML validation:
> ManageAccountAction-manageAccount!ChangePassword-validation.xml
>
> where doChangePassword is the name of the method to be invoked in
> ManageAccountAction
>
> The following setting is important as the ! is just a separator char
> (nothing special)
> # disable the old (bang) XWorks2 notation of dynamic invocation of
> actions. Wildcards are still permitted
> struts.enable.DynamicMethodInvocation = false
>
> My advice is not to use this feature of Struts2 and instead keep it
> simple (follow the convention of the Convention plugin, even if not in
> use yet).
>
> regards,
> Jeromy Evans.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Jeromy Evans <je...@blueskyminds.com.au>.
Roberto Nunnari wrote:
>
>
> 2) action names with wildcards and '!' (ie '*!*') are not usable for
> declarative action-alias validation. No idea why.
>
This works:
<action name="manageAccount!*" method="do{1}"
class="package.ManageAccountAction">
matches the XML validation:
ManageAccountAction-manageAccount!ChangePassword-validation.xml
where doChangePassword is the name of the method to be invoked in
ManageAccountAction
The following setting is important as the ! is just a separator char
(nothing special)
# disable the old (bang) XWorks2 notation of dynamic invocation of
actions. Wildcards are still permitted
struts.enable.DynamicMethodInvocation = false
My advice is not to use this feature of Struts2 and instead keep it
simple (follow the convention of the Convention plugin, even if not in
use yet).
regards,
Jeromy Evans.
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Hi guys.
From my tests here's what I found:
1) action names with '/' are not usable for declarative action-alias
validation because of java package name (and most probably filesystem )
incompatibilities
2) action names with wildcards and '!' (ie '*!*') are not usable for
declarative action-alias validation. No idea why.
3) action names with wildcards and '_' (ie '*_*') do work for
declarative action-alias validation.
So, for completeness and future reference (should it go into the wiki?),
here's how I configured struts.xml:
<action name="*_*" method="{2}"
class="mypkg.admin.{1}Action">
<result name="view" type="tiles">{1}View</result>
<result name="edit" type="tiles">{1}Edit</result>
<result name="input" type="tiles">{1}Edit</result>
<result name="success-redirect"
type="redirect-action">{1}_{2}</result>
</action>
and then use it in my jsps:
<s:url action="Category_create" namespace="/admin" id="newURL"/>
..and in order to add declarative validation, the above requires
a file named:
CategoryAction-Category_create-validation.xml
Best regards.
--
Robi
Roberto Nunnari wrote:
> Oops.. little typo! Correction below, in context.
>
> Maybe using a different separator in action name, like '!'
> instead of '/' could help..
>
> But now this leads me to a more general question:
> Can action names containing '*' be mapped at all to Action-alias
> validation?
>
> Thank you!
>
> --
> Robi
>
>
> Roberto Nunnari wrote:
>> Hello.
>>
>> I'd like to use declarative Action-alias field validation for
>> several Actions/methods in my S2 webpapp.
>>
>> S2 let's me do in struts.xml elegant things like:
>> <package name="admin" extends="tiles-default" namespace="/admin">
>> ...
>> <action name="*/*" method="{2}" class="mypkg.admin.{1}Action">
>> .. my results..
>> </action>
>> ...
>> </package>
>>
>> and then use it in my jsps:
>> <s:url action="Category/create" namespace="/admin" id="newURL"/>
>>
>> ..but in order to add declarative validation, that would require
>> a file named:
>> CategoryAction/create-validation.xml
> CategoryAction-Category/create-validation.xml
>
>
>>
>> but '/' is not a character allowed in filenames.
>>
>> How to go with this dilemma? Should I drop the slashes in
>> action names and use more verbose and less flexible declarations
>> in struts.xml, or is there a better way?
>>
>> Thank you!
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: validation and action names with slashes
Posted by Roberto Nunnari <ro...@supsi.ch>.
Oops.. little typo! Correction below, in context.
Maybe using a different separator in action name, like '!'
instead of '/' could help..
But now this leads me to a more general question:
Can action names containing '*' be mapped at all to Action-alias validation?
Thank you!
--
Robi
Roberto Nunnari wrote:
> Hello.
>
> I'd like to use declarative Action-alias field validation for
> several Actions/methods in my S2 webpapp.
>
> S2 let's me do in struts.xml elegant things like:
> <package name="admin" extends="tiles-default" namespace="/admin">
> ...
> <action name="*/*" method="{2}" class="mypkg.admin.{1}Action">
> .. my results..
> </action>
> ...
> </package>
>
> and then use it in my jsps:
> <s:url action="Category/create" namespace="/admin" id="newURL"/>
>
> ..but in order to add declarative validation, that would require
> a file named:
> CategoryAction/create-validation.xml
CategoryAction-Category/create-validation.xml
>
> but '/' is not a character allowed in filenames.
>
> How to go with this dilemma? Should I drop the slashes in
> action names and use more verbose and less flexible declarations
> in struts.xml, or is there a better way?
>
> Thank you!
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org