20 messages in org.apache.incubator.shindig-devRe: crash in BeanJsonConverter
FromSent OnAttachments
Aleksey PerfilovOct 10, 2008 12:55 pm 
Kevin BrownOct 10, 2008 2:35 pm 
Aleksey PerfilovOct 10, 2008 3:32 pm 
Aleksey PerfilovOct 10, 2008 4:07 pm 
Kevin BrownOct 10, 2008 4:13 pm 
Aleksey PerfilovOct 10, 2008 5:07 pm 
Evan GilbertOct 10, 2008 5:21 pm 
Ian BostonOct 11, 2008 5:04 am 
asthaOct 14, 2008 1:03 am 
Parrott, JustinOct 14, 2008 6:28 am 
peeyush gulatiOct 14, 2008 9:13 am.zip
Chris ChabotOct 14, 2008 10:38 am 
Dan PetersonOct 14, 2008 2:53 pm 
xin zhangOct 14, 2008 2:58 pm 
peeyush gulatiOct 14, 2008 3:12 pm 
asthaOct 14, 2008 11:45 pm 
Astha BhatnagarDec 9, 2008 1:55 am 
RopuDec 9, 2008 4:00 am 
Chris ChabotDec 9, 2008 5:20 am 
Bob EvansMar 27, 2009 3:19 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: crash in BeanJsonConverterActions...
From:Aleksey Perfilov (aper@hi5.com)
Date:Oct 10, 2008 3:32:38 pm
List:org.apache.incubator.shindig-dev

True, and of course we do that for our own classes. But in case you end up using some other class that comes from standard Java or some library, you can't annotate that. Perhaps using an adapter in some way might be the only way then.

Besides, I actually don't see annotations being taken into account in BeanJsonConverter code. It just grabs all methods that start with "get" when converting object to json. Actually, I just noticed that in the Person class from org.apache.shindig.social.opensocial.model, getGender is not annotated, neither is getUtcOffset, yet both of them are converted to json.

Aleksey

On 10/10/08 2:36 PM, "Kevin Brown" <et@google.com> wrote:

I think it would make more sense to use annotations on the beans instead of doing name based matching. That way you're always explicit in what you export and don't have problems like this.

On Fri, Oct 10, 2008 at 12:55 PM, Aleksey Perfilov <aper@hi5.com>wrote:

Hi all,

I¹ve had problems using BeanJsonConverter on objects that contain getters that have 1 or more arguments. Since convertMethodsToJson() expects not to see any arguments on getters, invoke() will crash on getters that have some.

Do you think we should adjust getMatchingMethods() to filter out getters that require parameters? Or just skip those getters in convertMethodsToJson(). I think it is reasonable to assume we don¹t need those for conversion purposes.

Thanks,

Aleksey