The "issue" is that GWT will send you the moduleBaseURL as payload from the client to the server and the server uses that value to find the RPC policy file on disk. When you use a reverse proxy then the moduleBaseURL will not change when passing the proxy, it will always be http://domain.com/appname/<modulename> or http://domain.com/<modulename> (depends on how you deploy your app). Because of this GWT's default implementation of RemoteServiceServlet.doGetSerializationPolicy() does not work anymore as it tries to match the moduleBaseURL with the server context path which can now be totally different because of the proxy.
So you either have to write custom code to find the RPC policy file on your server (thats what I also do at the moment) or you can try overriding the default moduleBaseURL on the client by using <meta name='gwt:property' content='baseUrl=/appcontext/myapp'> in your host page.
Also keep in mind when you use a reverse proxy that you might need to rewrite cookie domains / paths as well. In apache you can do that with ProxyPassReverseCookieDomain and ProxyPassReverseCookiePath.
-- J.
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment