java.lang.SecurityException: Blocked attempt to access interface - Issue in GWT 1.4.6 upgrade

Exception while dispatching incoming RPC call
java.lang.SecurityException: Blocked attempt to access interface 'http://localhost/myApp/org.kamal.project.module/', which is either not implemented by this servlet or which doesn't extend RemoteService; this is either misconfiguration or a hack attempt


The GWT application was working fine earlier; so decided to upgrade to the new GWT versio. But!!! with the upgrade, application fail with a Security exception.

Above is an extract from the exception thrown by GWT, while upgrading old GWT application to GWT 1.4.6 version.

Even though SecurityException is thrown, most possible cause for the above error is; old gwt-servlet.jar file has not been replaced with the new gwt-servlet.jar in the server side. (Make sure you replace all the old jar files in a upgrade).

By placing the new gwt-servlet.jar file inside the lib directory on your server, this issue will be resolved.

Complete stack trace would look as below.

- Exception while dispatching incoming RPC call
java.lang.SecurityException: Blocked attempt to access interface 'http://localhost/myApp/org.kamal.project.module/', which is either not implemented by this servlet or which doesn't extend RemoteService; this is either misconfiguration or a hack attempt
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:211)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:167)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)

Check out this stream