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&currencies.IND=INR&currencies.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
>> >>> >>
>> >>> >
>> >>>
>> >>
>> >
>>
>
>

Reply via email to