On Friday, June 1, 2012 12:31:42 PM UTC+2, Tiago wrote:
>
> Hello Thomas,
>
> On Friday, June 1, 2012 10:51:00 AM UTC+2, Thomas Broyer wrote:
>>
>> Is X an EntityProxy or a ValueProxy? If it's a ValueProxy, then this is 
>> the expected behavior; you'll have to either:
>
>
> It's a ValueProxy (X is not an entity).
> Are you sure that an IllegalArgumentException with no message coming from 
> a native method I didn't call directly is an expected behavior?
>

Yes.

   1. You create a ValueProxy, all its properties are 'null' by default
   2. You send it to the server; because it's a ValueProxy, all its 
   properties have to be sent, so the unset property is sent with a 'null' 
   value
   3. The RequestfactoryServlet / SimpleRequestProcessor creates a domain 
   object and pushes the property values in it, so it tries to set the 
   property to 'null'.

I think it's been suggested somewhere that we add the concept of "default 
values" to AutoBean and RF proxy properties, so you could annotate your X 
proxy to have the property default to some specific value, without the need 
to set it explicitly before sending it to the server. I can't find the 
enhancement request back (it does not seem to be in the issue tracker at 
least).
 

> Shouldn't the framework just let the value defined in the constructor of 
> the domain object,
>

No. Not for a ValueProxy.
 

> or, if that's too complicated, try raising a better exception?
>

Well, it's your exception AFAICT.


>>    - set the property value to Boolean.FALSE on the client-side
>>    
>> I went for that one. You're right that it could be boolean though. It's 
> just that in this project every domain property is a Boolean, never a 
> boolean.
>  
> Also, I must declare the property in the proxy because, although the 
> Editor I mention doesn't care about it, there are some points where I need 
> to read the value of this property in the client-side.
>

You can have several proxy interfaces for the same domain object; if that 
can help in your case.

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/eSi-1ef_ma8J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to