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