Friday, August 31, 2018

Re: How to write RPC services that don't inherit RemoteService?

Your interfaces need to extend RemoteService, otherwise the GWT.create() will fail; so I don't think what you're trying to do would be possible…

It might be possible to create those proxies programmatically though using java.lang.reflect.Proxy, binding everything together through reflection and Spring BeanFactory/ApplicationContext, and even generating the GWT interfaces automatically from the non-GWT ones (public interface ExampleService implements ExampleServiceStub, RemoteService {})
You'd have to somehow dig into RPC "internals" though, to replace the RemoteServiceServlet behavior to load your beans (there used to be a project named spring4gwt that did this years ago)

(disclaimer: I'm not a Spring user –I don't like Spring–, so I can't help further)

On Friday, August 31, 2018 at 3:13:56 PM UTC+2, Douglas de Oliveira Mendes wrote:

I have a bunch of service interfaces in a jar. They don't extend RemoteService interface. Their server side implementations are currently spring remoting stubs (HttpInvokerProxyFactoryBean).

[browser side] <---RPC---> [server side] <---Spring remoting (http invoker)---> [actual service implementations with business rules and all]

I wish to use these interfaces (or their async versions) client side on GWT enabling compile time verifications. Currently I have dumb server side implementations that delegate all the calls. Like this:

public class ExampleServiceImpl implements ExampleService {
private ExampleServiceStub exampleServiceStub;
int doSomething() {
return exampleServiceStub.doSomething();

I would like to get rid of the above class. Ideas? Something better than overriding RPC.decodeRequest method? Maybe it's something that has already been done...


You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To post to this group, send email to
Visit this group at
For more options, visit

No comments:

Post a Comment