One more additional piece of information is that the namespaceMatcher does
contain the compiled pattern for my namespace. 

Another thing I noticed when messing around trying to figure this out is
that I created a different controller class ain a different package for
example test.MyTestController. 

when I tried the URL /test/-1/my-test.xml my namespace was set to "" and my
actionname was = "test" and methodname was populated with "my-test". This is
if I had a namespace annotation as follows 

@Namespace("test/{id}"}
public class MyTestController

Thanks in advance



struts-restful wrote:
> 
> Yes I am putting it in the namespace annotation 
> 
> @Namespace("/person/name/test-example/{id}") 
> 
> Stepping through the namespace pattern matcher code it does replace the
> {id} with ([^/]+) but that is as far as i have got and still dont
> understand why it does not work
> 
> Thanks in advance
> 
> 
> 
> Musachy Barroso wrote:
>> 
>> are you putting that in the @Namespace annotation? It will not work on
>> the @Action annotation.
>> 
>> musachy
>> 
>> On Tue, Sep 29, 2009 at 8:49 AM, struts-restful <fshou...@ufi.com> wrote:
>>>
>>> Also I know that the default parameter is id but ideally i am trying to
>>> create a url as follows
>>>
>>> /person/name/{id}/{anotherId}/test-example
>>>
>>>
>>> struts-restful wrote:
>>>>
>>>> I amended my URL to be as follows then using the namespace pattern
>>>> matcher
>>>>
>>>> /person/name/{id}/test-example
>>>>
>>>> but this now maps the config as /person/name/{id}. How would I get rid
>>>> of
>>>> the {id} bit but still pass the parameter through?
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>> Musachy Barroso wrote:
>>>>>
>>>>> the namespace matcher, ad the name implies matches parameters only in
>>>>> the namespace (the part before the action). To map params after the
>>>>> action name, you have to use wildcards. Because this is confusing, we
>>>>> introduced the advanced regex patters which will sove all the cases,
>>>>> see this:
>>>>>
>>>>> http://cwiki.apache.org/confluence/pages/editpage.action?pageId=44247
>>>>>
>>>>> all 3 approaches are there with examples.
>>>>> musachy
>>>>>
>>>>> On Tue, Sep 29, 2009 at 8:20 AM, struts-restful <fshou...@ufi.com>
>>>>> wrote:
>>>>>>
>>>>>> Ok after some further investigating the problem appears to be when
>>>>>> the
>>>>>> server
>>>>>> is starting up and it is building the namespaceActionConfig map.
>>>>>>
>>>>>> because my namespace on the action is set to
>>>>>> /person/name/test-example/{id}
>>>>>> when the action config is created the key is set to
>>>>>> /person/name/test-example/{id}. So when I call the url the rest
>>>>>> action
>>>>>> mapper parses the mapping and creates a namespace of /person/name,
>>>>>> and
>>>>>> subsequently when it tries to determine the corresponding action
>>>>>> config
>>>>>> associated with this key nothing is found because on start up it had
>>>>>> been
>>>>>> mapped to  /person/name/test-example/{id}.
>>>>>>
>>>>>> When i remove the namespace annotation and type in the url my action
>>>>>> is
>>>>>> then
>>>>>> correctly mapped with  /person/name.
>>>>>>
>>>>>> So is this a bug or have i missed something in my configuration?
>>>>>>
>>>>>> thanks in advance
>>>>>>
>>>>>>
>>>>>>
>>>>>> struts-restful wrote:
>>>>>>>
>>>>>>> Thanks for the help and your reply.
>>>>>>>
>>>>>>> i implemented the named pattern matcher but cant get it to work. I
>>>>>>> have
>>>>>>> the following config in my struts.xml
>>>>>>>
>>>>>>> <bean type="com.opensymphony.xwork2.util.PatternMatcher"
>>>>>>> name="namedVariablePatternMatcher"
>>>>>>>
>>>>>>> class="com.opensymphony.xwork2.util.NamedVariablePatternMatcher"/>
>>>>>>>
>>>>>>>  <constant name="struts.enable.SlashesInActionNames" value="true"/>
>>>>>>>  <constant name="struts.patternMatcher"
>>>>>>> value="namedVariablePatternMatcher"/>
>>>>>>>
>>>>>>> On my action I added the namespace annotation for example
>>>>>>>
>>>>>>> @Namespace("/person/name/test-example/{id}")
>>>>>>>
>>>>>>> this uses the restActionMapper but does not return a ActionConfig
>>>>>>> object
>>>>>>> with the namespace /person/name and the name test-example. When I
>>>>>>> stepped
>>>>>>> into this method in the DefaultConfiguration class the action
>>>>>>> TestExampleController had not been added to the map when it tries to
>>>>>>> find
>>>>>>> a config object.
>>>>>>>
>>>>>>> I then tried the same url but removed the namespace annotation from
>>>>>>> the
>>>>>>> action and typed the url into the browser. This went through the
>>>>>>> same
>>>>>>> code
>>>>>>> but this time returned the correct ActionConfig object and the
>>>>>>> action
>>>>>>> executed successfully.
>>>>>>>
>>>>>>> Am i missing a step somewhere
>>>>>>>
>>>>>>> All help is appreciated. thanks in advance.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Musachy Barroso wrote:
>>>>>>>>
>>>>>>>> You want to look at wildcards:
>>>>>>>>
>>>>>>>> http://struts.apache.org/2.x/docs/wildcard-mappings.html
>>>>>>>>
>>>>>>>> That feature that Alex is refering to (coined advanced wildcards
>>>>>>>> for
>>>>>>>> lack of imagination), is in trunk and has not been released yet.
>>>>>>>>
>>>>>>>> musachy
>>>>>>>>
>>>>>>>> On Mon, Sep 28, 2009 at 5:57 AM, Alex Siman
>>>>>>>> <aleksandr.si...@gmail.com>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Look here:
>>>>>>>>> http://www.nabble.com/parameters-in-url-td25602877.html
>>>>>>>>>
>>>>>>>>> Restful plugin is not so good as it supposed to be.
>>>>>>>>>
>>>>>>>>> struts-restful wrote:
>>>>>>>>>>
>>>>>>>>>> Does anyone know how to get the restful web service to call a
>>>>>>>>>> method
>>>>>>>>>> different to show or edit.
>>>>>>>>>>
>>>>>>>>>> For example I have the following url
>>>>>>>>>>
>>>>>>>>>> http://localhost:8080/testeg/my/example/example-count/1/count.xml
>>>>>>>>>>
>>>>>>>>>> I want this to call the method count in my
>>>>>>>>>> ExampleCountController.
>>>>>>>>>> The
>>>>>>>>>> URl
>>>>>>>>>> goes to the action and calls the setId method setting the Id 2
>>>>>>>>>> but
>>>>>>>>>> does
>>>>>>>>>> not go to the count method
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> View this message in context:
>>>>>>>>> http://www.nabble.com/restful-URL-issue-tp25641701p25645156.html
>>>>>>>>> Sent from the Struts - User mailing list archive at Nabble.com.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>>>>>>>>> For additional commands, e-mail: user-h...@struts.apache.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>>>>>>>> For additional commands, e-mail: user-h...@struts.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://www.nabble.com/restful-URL-issue-tp25641701p25665119.html
>>>>>> Sent from the Struts - User mailing list archive at Nabble.com.
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>>>>>> For additional commands, e-mail: user-h...@struts.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>>>>> For additional commands, e-mail: user-h...@struts.apache.org
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/restful-URL-issue-tp25641701p25665572.html
>>> Sent from the Struts - User mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>>> For additional commands, e-mail: user-h...@struts.apache.org
>>>
>>>
>> 
>> 
>> 
>> -- 
>> "Hey you! Would you help me to carry the stone?" Pink Floyd
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
>> For additional commands, e-mail: user-h...@struts.apache.org
>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/restful-URL-issue-tp25641701p25678141.html
Sent from the Struts - User mailing list archive at Nabble.com.


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

Reply via email to