Your patch contains empty (if) branches so that can not be committed; Allowing for Map<String,Primitive> will result in all but the last name/value pairs with identical names being lost
Does it make sense ? Cheers, Sergey On Fri, Jun 3, 2011 at 1:22 AM, Biju Nair <biju74tec...@gmail.com> wrote: > I am confused on what you mean by "empty branches", can you just elaborate? > > Do you mean we need to have only Map<String,List<Primitive>> and not > Map<String,Primitive>? > > On Thu, Jun 2, 2011 at 1:46 PM, Sergey Beryozkin <sberyoz...@gmail.com>wrote: > >> Please check a previous message, we need a better Map check and no >> empty branches >> >> thanks, Sergey >> >> On Thu, Jun 2, 2011 at 6:37 PM, Biju Nair <biju74tec...@gmail.com> wrote: >> > Yes I can help you in improving. Let me know what needs to be done. >> > >> > On Wed, Jun 1, 2011 at 10:16 AM, Sergey Beryozkin <sberyoz...@gmail.com >> >wrote: >> > >> >> I did. It needs a bit more work and I'll need to allocate some time to >> >> add a test and see what needs to be improved, ex, having empty if >> >> branches is not possible. Realistically, it has to be Map<String, >> >> List<Primitive>> (where Primitive is String or Integer/etc, to handle >> >> m.v=1&m.v=2 or similar), so isMapSupported() should check it and >> >> return false if not (this can help with eliminating empty branches). >> >> Would you like to improve this patch a bit ? I can do some test once >> >> it's ready, but I can't afford at all to look into improving the patch >> >> right now... >> >> >> >> Thanks, Sergey >> >> >> >> On Wed, Jun 1, 2011 at 6:02 PM, Biju Nair <biju74tec...@gmail.com> >> wrote: >> >> > Did you get chance to look into this? >> >> > >> >> > On Thu, May 26, 2011 at 2:19 PM, Sergey Beryozkin < >> sberyoz...@gmail.com >> >> >wrote: >> >> > >> >> >> Sorry, not yet, hoping to do it shortly >> >> >> >> >> >> Sergey >> >> >> >> >> >> On Thu, May 26, 2011 at 8:36 PM, Biju Nair <biju74tec...@gmail.com> >> >> wrote: >> >> >> > did you get chance to update the patch and test it? >> >> >> > >> >> >> > Biju >> >> >> > >> >> >> > On Wed, May 25, 2011 at 9:09 AM, Biju Nair <biju74tec...@gmail.com >> > >> >> >> wrote: >> >> >> > >> >> >> >> Attached the path in JIRA. >> >> >> >> >> >> >> >> Attaching with this mail also. >> >> >> >> >> >> >> >> On Wed, May 25, 2011 at 4:33 AM, Sergey Beryozkin < >> >> >> sberyoz...@gmail.com>wrote: >> >> >> >> >> >> >> >>> Hi >> >> >> >>> >> >> >> >>> Can you attach the updated patch to JIRA please ? I'm not seeing >> a >> >> >> >>> patch attached to your email message. >> >> >> >>> >> >> >> >>> Supporting explicit Lists for JAX-RS param annotations >> (@PathParam, >> >> >> >>> etc) is a JAX-RS spec requirement. >> >> >> >>> Supporting explicit Lists which are mapped to request payloads or >> >> >> >>> responses is the extensions. All JAX-RS stacks are probably >> >> supporting >> >> >> >>> it, but that is an extension. >> >> >> >>> Supporting MultivaluedMap in case of form submissions is a spec >> >> >> >>> requirement as well. It really only makes sense for form >> payloads. >> >> The >> >> >> >>> only other exception is probably QueryParams and may be >> >> HeaderParams, >> >> >> >>> but it has to be a MultivaluedMap for a single key/multiple >> values >> >> >> >>> case to work. >> >> >> >>> >> >> >> >>> Cheers, Sergey >> >> >> >>> >> >> >> >>> On Wed, May 25, 2011 at 4:45 AM, Biju Nair < >> biju74tec...@gmail.com> >> >> >> >>> wrote: >> >> >> >>> > I gave the Explict Map Support, becuase CXF was supporting >> Explict >> >> >> List >> >> >> >>> > support. >> >> >> >>> > >> >> >> >>> > The code which i send you have only support for beans with >> nested >> >> Map >> >> >> >>> > interface. >> >> >> >>> > >> >> >> >>> > On Tue, May 24, 2011 at 8:28 PM, Biju Nair < >> >> biju74tec...@gmail.com> >> >> >> >>> wrote: >> >> >> >>> > >> >> >> >>> >> That was my mistake. I was using Eclipse IDE and I formatted >> the >> >> >> java >> >> >> >>> file, >> >> >> >>> >> so the whole file got messed up. >> >> >> >>> >> >> >> >> >>> >> I revereted the changes and made support only for bean with >> >> nested >> >> >> Map >> >> >> >>> >> interface (FormParam(""),QueryParam("")..) >> >> >> >>> >> >> >> >> >>> >> Attaching the changed file with this mail. >> >> >> >>> >> ------------------------------ >> >> >> >>> >> Details, >> >> >> >>> >> >> >> >> >>> >> Modified the changes only for supporting map's interface only >> >> inside >> >> >> >>> beans. >> >> >> >>> >> >> >> >> >>> >> Classes Changed, >> >> >> >>> >> org.apache.cxf.jaxrs.utils.InjectionUtils >> >> >> >>> >> >> >> >> >>> >> Methods Changed >> >> >> >>> >> public static Object handleBean(...) - Added another if clause >> >> >> >>> >> "} else if (InjectionUtils.isSupportedMap(type)) {" >> >> >> >>> >> >> >> >> >>> >> Methods Added >> >> >> >>> >> isSupportedMap >> >> >> >>> >> mergeMap >> >> >> >>> >> convertMultimapToMap >> >> >> >>> >> injectIntoMap >> >> >> >>> >> >> >> >> >>> >> -------------------------- >> >> >> >>> >> >> >> >> >>> >> >> >> >> >>> >> On Tue, May 24, 2011 at 4:36 AM, Sergey Beryozkin < >> >> >> >>> sberyoz...@gmail.com>wrote: >> >> >> >>> >> >> >> >> >>> >>> Actually, I can see you modifying the code for explicit Maps >> be >> >> >> >>> >>> supported as well. >> >> >> >>> >>> >> >> >> >>> >>> That is not a bad idea but I'd prefer for one issue (to do >> with >> >> >> >>> >>> parameter beans containing Map fileds) addressed first. >> >> >> >>> >>> >> >> >> >>> >>> Explicit Maps can be supported right now (a bit of work is >> >> needed >> >> >> to >> >> >> >>> >>> register ParameterHandler to capture Form, query or path >> values >> >> or >> >> >> >>> >>> XmlJavaTypeAdapter to capture say XML payload). >> >> >> >>> >>> >> >> >> >>> >>> Please, simplify the patch a bit so that only a >> 'FormParam(""), >> >> >> >>> >>> QueryParam(""), or PathParam("") Map' case can be supported >> >> >> >>> >>> >> >> >> >>> >>> thanks, Sergey >> >> >> >>> >>> >> >> >> >>> >>> On Tue, May 24, 2011 at 12:04 PM, Sergey Beryozkin < >> >> >> >>> sberyoz...@gmail.com> >> >> >> >>> >>> wrote: >> >> >> >>> >>> > Hi >> >> >> >>> >>> > >> >> >> >>> >>> > On Fri, May 20, 2011 at 11:23 PM, Biju Nair < >> >> >> biju74tec...@gmail.com >> >> >> >>> > >> >> >> >>> >>> wrote: >> >> >> >>> >>> >> Updated the JIRA with DIFF file. >> >> >> >>> >>> >> >> >> >> >>> >>> >> May I know whether that worked. >> >> >> >>> >>> >> >> >> >> >>> >>> > I have problems applying the patch, as it seems like >> >> >> InjectionUtils >> >> >> >>> >>> > has been completely changed, I can't spot, by looking at >> the >> >> diff >> >> >> >>> >>> > file, what the actual changes are. >> >> >> >>> >>> > I'm going to attach svn properties file from my local >> snapshot >> >> to >> >> >> >>> >>> > JIRA, can you please give me a favor and try again with >> those >> >> >> >>> >>> > properties applied ? >> >> >> >>> >>> > >> >> >> >>> >>> > thanks, Sergey >> >> >> >>> >>> > >> >> >> >>> >>> >> On Fri, May 20, 2011 at 2:26 AM, Sergey Beryozkin < >> >> >> >>> >>> sberyoz...@gmail.com>wrote: >> >> >> >>> >>> >> >> >> >> >>> >>> >>> Hi - did you see the comments on JIRA ? >> >> >> >>> >>> >>> Please update your local snapshot and create a patch >> >> >> >>> >>> >>> >> >> >> >>> >>> >>> thanks, Sergey >> >> >> >>> >>> >>> >> >> >> >>> >>> >>> On Tue, May 17, 2011 at 9:25 PM, Biju Nair < >> >> >> >>> biju74tec...@gmail.com> >> >> >> >>> >>> wrote: >> >> >> >>> >>> >>> > Created JIRA - CXF-3529 >> >> >> >>> >>> >>> > >> >> >> >>> >>> >>> > Let me know what is the next step? >> >> >> >>> >>> >>> > >> >> >> >>> >>> >>> > Biju >> >> >> >>> >>> >>> > >> >> >> >>> >>> >>> > On Tue, May 17, 2011 at 1:51 AM, Sergey Beryozkin < >> >> >> >>> >>> sberyoz...@gmail.com >> >> >> >>> >>> >>> >wrote: >> >> >> >>> >>> >>> > >> >> >> >>> >>> >>> >> Hi >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> On Tue, May 17, 2011 at 7:09 AM, Biju Nair < >> >> >> >>> biju74tec...@gmail.com >> >> >> >>> >>> > >> >> >> >>> >>> >>> wrote: >> >> >> >>> >>> >>> >> > Added the Map feature for service level and bean >> level. >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > I was not able to check-in the files, so attaching >> the >> >> >> same. >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> I don't see an attachment, but what you need to do is >> to >> >> >> create >> >> >> >>> a >> >> >> >>> >>> CXF >> >> >> >>> >>> >>> >> JIRA, attach a patch and I will apply it. >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> > Following are the changes, >> >> >> >>> >>> >>> >> > Added Map Support to Rest Based Services >> >> >> >>> >>> >>> >> > -- Added InjectionUtils.injectIntoMap >> >> >> >>> >>> >>> >> > -- Added InjectionUtils.convertMultimapToMap >> >> >> >>> >>> >>> >> > -- Changed Signature of >> >> >> InjectionUtils.createParameterObject >> >> >> >>> >>> >>> >> > -- Modified handleBean >> >> >> >>> >>> >>> >> > -- Modified createParameterObject >> >> >> >>> >>> >>> >> > -- Added InjectionUtils.injectIntoMap >> >> >> >>> >>> >>> >> > -- Added InjectionUtils.isSupportedMap >> >> >> >>> >>> >>> >> > -- Added InjectionUtils.mergeMap >> >> >> >>> >>> >>> >> > -- Added JAXRSUtils.processMapValue >> >> >> >>> >>> >>> >> > -- Changed JAXRSUtils.processFormParam >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > The code is tested with sample services like, >> >> >> >>> >>> >>> >> > public String debug(@FormParam("")TestEmployeeTO >> >> >> >>> >>> >>> >> > testObject1,@FormParam("map") Map<String,Integer> >> map) >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > public class TestEmployeeTO { >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > private HashMap<String,String> currencies; >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > //getters/setters >> >> >> >>> >>> >>> >> > } >> >> >> >>> >>> >>> >> > Input Data >> >> >> >>> >>> >>> >> > >> >> map.x=11&map.y=9¤cies.IND=INR¤cies.USA=DOLLAR >> >> >> >>> >>> >>> >> > Output >> >> >> >>> >>> >>> >> > TestEmployeeTO[currencies={IND=INR, USA=DOLLAR}] >> >> >> >>> >>> >>> >> > map={y=9, x=11} >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> thanks, Sergey >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> > Please verify and let me know is this is good. >> >> >> >>> >>> >>> >> > >> >> >> >>> >>> >>> >> > Biju B >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> -- >> >> >> >>> >>> >>> >> Sergey Beryozkin >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> >> Application Integration Division of Talend >> >> >> >>> >>> >>> >> http://sberyozkin.blogspot.com >> >> >> >>> >>> >>> >> >> >> >> >>> >>> >>> > >> >> >> >>> >>> >>> >> >> >> >>> >>> >> >> >> >> >>> >>> > >> >> >> >>> >>> >> >> >> >>> >> >> >> >> >>> >> >> >> >> >>> > >> >> >> >>> >> >> >> >>> >> >> >> >>> >> >> >> >>> -- >> >> >> >>> Sergey Beryozkin >> >> >> >>> >> >> >> >>> Application Integration Division of Talend >> >> >> >>> http://sberyozkin.blogspot.com >> >> >> >>> >> >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> >> >> -- >> >> >> Sergey Beryozkin >> >> >> >> >> >> Application Integration Division of Talend >> >> >> http://sberyozkin.blogspot.com >> >> >> >> >> > >> >> >> >> >> >> >> >> -- >> >> Sergey Beryozkin >> >> >> >> Application Integration Division of Talend >> >> http://sberyozkin.blogspot.com >> >> >> > >> >> >> >> -- >> Sergey Beryozkin >> >> Application Integration Division of Talend >> http://sberyozkin.blogspot.com >> > -- Sergey Beryozkin Application Integration Division of Talend http://sberyozkin.blogspot.com