Hi Sergey, Sorry for the delay, sure, I'll try it. I'm on holidays now, but I can do it on Monday.
Best, Gabriel Sergey Beryozkin-2 wrote: > > I did few more tests today (with/without CXFServlet, with PathSegments) > and I still can't reproduce it so I will give up for a > moment. > But I'm still nervous you managed to hit a problem somehow - can you > please give me a favor and help to get to the bottom of it ? > It should take 30 mins max of your time, download > http://www.apache.org/dyn/closer.cgi?path=%2Fcxf%2F2.2.2%2Fapache-cxf-2.2.2-src.zip > > and put a breakpoint in URITemplate.match() > > A better news is that after trying to reproduce it, I added a new method > to WebClient which can make it simpler for users to deal > with template parameters, such that they can avoid dealing with UriBuilder > directly. > So you can do > WebClient client = WebClient.create("http://widgets"); > cleint.path("("/renderwidget/id/{widgetID}/type/{widgetType}/size/{size}/locale/{locale}/{properties}", > idValue, widgetTypeValue, 1, "en_US", > "properties;1=2").get(Widget.class) > > cheers, Sergey > > > ----- Original Message ----- > From: "Gabriel Guardincerri" <[email protected]> > To: <[email protected]> > Sent: Wednesday, July 01, 2009 10:35 PM > Subject: Problem with matrix params, works with one, but not with two (or > more) params > > >> >> Hello, >> >> I'm having a problem where matrix parameters are not recognized past the >> first parameter. When I have one matrix parameter, the method below is >> invoked and the PathSegment.getMatrixParameters() returns the single >> result. >> >> However, if I append a second matrix parameter (or more), the service >> method is not invoked at all and I receive the following error message: >> >> "No operation matching request". >> >> Service interface: >> >> @GET >> @Path("/renderwidget/id/{widgetID}/type/{widgetType}/size/{size}/locale/{locale}/{properties}") >> WSWidget renderWidget(@PathParam("widgetID") Long widgetID, >> @PathParam("widgetType") Integer widgetType, >> @PathParam("size") Long containerSize, >> @PathParam("locale") String locale, >> @PathParam("properties") PathSegment props) >> throws RemoteBridgeException; >> >> Working >> URL: >> /renderwidget/id/1007/type/1/size/1/locale/en_US/properties;numResults=1 >> >> Broken: >> URL: >> /renderwidget/id/1007/type/1/size/1/locale/en_US/properties;numResults=1;foo=bar >> >> The reason I'm trying to use matrix parameters is that I have an >> arbitrary map of name/value for a widget class. I can't try to parse >> them out individually using @MatrixParam, because they vary by widget >> class and are not known at the service level. >> >> Thanks for your help. >> -- >> View this message in context: >> http://www.nabble.com/Problem-with-matrix-params%2C-works-with-one%2C-but-not-with-two-%28or-more%29-params-tp24297533p24297533.html >> Sent from the cxf-user mailing list archive at Nabble.com. >> > > > -- View this message in context: http://www.nabble.com/Problem-with-matrix-params%2C-works-with-one%2C-but-not-with-two-%28or-more%29-params-tp24297533p24327034.html Sent from the cxf-user mailing list archive at Nabble.com.
