1.4.10RC RPC: change in requirements for remote service parameters that are interface types

0 views
Skip to first unread message

Sandy McArthur

unread,
May 31, 2007, 4:42:27 PM5/31/07
to Google Web Toolkit Contributors
I just came across a breaking RPC change in one of my projects. I had
something similar to:

interface Account extends IsSerializable {
// some required getters
}

//class BasicMembership implements Account ....
//class RemoteMembership implements Account ....
// (and some non-GWT related membership types used elsewhere not
visible to GWT code)

interface AccountService extends RemoteService {
boolean checkAccount(Account account);
}

with the new 1.4.10RC this fails to work because it complains that not
all Account types declare a default constructor because interfaces
don't have constructors. When I converted Account from an interface to
an abstract class and updated the membership classes RPC works again.
But now my non-GWT membership types need GWT to compile or I'm going
to have to translate between DTOs. :-(

It seems strange that one non-instantiable type (an abstract class) is
allowed as a RPC parameter when another non-instantiable type (an
interface) is not allowed.

Was this an intended change in RPC behavior? If so maybe add something
to the RPC section of the release notes.

--
Sandy McArthur

"He who dares not offend cannot be honest."
- Thomas Paine

Scott Blum

unread,
Jun 1, 2007, 6:25:30 PM6/1/07
to Google-Web-Tool...@googlegroups.com
I'm sure that it wasn't the intent that no interface could extend IsSerializable.  Could you file a bug with "Regression:" in the subject line?

Sandy McArthur

unread,
Jun 4, 2007, 5:18:40 PM6/4/07
to Google-Web-Tool...@googlegroups.com
Created an issue and example project attached to issue 1163:
http://code.google.com/p/google-web-toolkit/issues/detail?id=1163

--

Reply all
Reply to author
Forward
0 new messages