yes, that would work.

musachy

On Thu, Sep 24, 2009 at 7:01 PM, Alex Siman <aleksandr.si...@gmail.com> wrote:
>
> Very useful feature! It's SEO friendly and reduces/eliminates using of
> UrlRewriteFilter.
>
> Is this code correct?:
>
> @Results({
>       �...@result(
>                name = Action.SUCCESS,
>                location = "{2}.jsp"
>        )
> })
> class TestAction {
>        String bio, name;
>
>       �...@action("/{bio:.+}/test/{name}/.*")
>        public void execute() {...}
> }
>
>
> Musachy Barroso wrote:
>>
>> meh, this one didn't put up much of a fight :). With these set
>> ("regex" alternative implementation of patternMatcher):
>>
>>  <constant name="struts.enable.SlashesInActionNames" value="true"/>
>>  <constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/>
>>  <constant name="struts.patternMatcher" value="regex" />
>>
>> I can do this:
>>
>> <package name="regex" extends="struts-default" namespace="/">
>>         <action name="/{bio:.+}/test/{name}/.*"
>> class="org.apache.struts2.showcase.UITagExample">
>>            <result>/tags/ui/example.jsp</result>
>>         </action>
>> </package>
>>
>> calling "/WorldDomination/test/LexLuthor" will set "bio" to
>> "WorldDomination" and "name" to "LexLuthor". The regular expressions
>> can be simple, like {name} or they can define the field name and the
>> regex like "{name:some_reg_ex_here}". The notation {X} still works, so
>> this can be done:
>>
>>  <result>/tags/ui/{2}.jsp</result>
>>
>> Idea shamelessly copied from JAX-RS, I will commit it later when I
>> have more tests in place.
>>
>> musachy
>>
>> On Thu, Sep 24, 2009 at 2:19 PM, Musachy Barroso <musa...@gmail.com>
>> wrote:
>>> I find that using parameters in urls is confusing in struts, and there
>>> are just too many (and not compatible) ways of doing it, for example,
>>> if you want to have parameters in front of the action name, like
>>>
>>> /something/param1/param2/ActionName
>>>
>>> you would have to use the "namedVariable" action mapper, but then, you
>>> cannot have parameters after the action name ("ActionName"). If you
>>> want to have parameters after the action name, then you can use
>>> wildcards, and do something like:
>>>
>>> <package name="edit" extends="struts-default" namespace="/edit">
>>>    <action name="/person/*"
>>> class="org.apache.struts.webapp.example.EditAction">
>>>        {1}
>>>        <result>/mainMenu.jsp</result>
>>>    </action>
>>> </package>
>>>
>>> And maybe, you can mix them, but I haven't tried that. I find all this
>>> very confusing and hard to understand. I would like to do this:
>>>
>>> class MyAction {
>>>  String param1, param2, param3;
>>>
>>> �...@action("/{param1}/{param2}/MyAction/{param3}")
>>>  public void execute() {....}
>>> }
>>>
>>> and the framework should figure out the rest for me. I don't think
>>> this would be that hard to implement and should provide an unified way
>>> of handling these type of urls. Thoughts?
>>>
>>> musachy
>>> --
>>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>>
>>
>>
>>
>> --
>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
>> For additional commands, e-mail: dev-h...@struts.apache.org
>>
>>
>>
>
> --
> View this message in context: 
> http://www.nabble.com/parameters-in-url-tp25602877p25605180.html
> Sent from the Struts - Dev mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> For additional commands, e-mail: dev-h...@struts.apache.org
>
>



-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to