我们正在将使用Jersey 2的REST集成到使用Guice for DI的GAE Java应用程序中。我们可以在本地Dev服务器上执行此操作。当我们将其部署到应用程序引擎时,它无法在提供的包中找到bean(Rest类),而在本地运行时可以找到bean(Rest类)。
代码看起来像这样
**** Code to add all available bean classes in the package. ****
rest("/api/*").packages("com.l3.server.mart.rest");
**** Code being used to read all beans in the package provided. ****
String resourcePath = packge.replace(".", "/");
URL resource = getClass().getClassLoader().getResource(resourcePath);
它在本地开发服务器上正确返回资源URL,但在其运行的App-Engine服务器上返回null。
请在这里提出问题?
谢谢 阿德哈尔(Aadhaar)
答案 0 :(得分:1)
尝试了多种方法来调试问题之后,我发现了appengine-web.xml中的配置是罪魁祸首。
配置为
<staging>
<enable-jar-classes>true</enable-jar-classes>
</staging>
删除此配置可解决此问题。