当我将战争部署到Jetty 8.1+(Servlet 3.0)时,我得到以下堆栈跟踪:
显示java.lang.NullPointerException 在org.jboss.resteasy.plugins.servlet.ResteasyServletInitializer.onStartup(ResteasyServletInitializer.java:55) 在org.eclipse.jetty.plus.annotation.ContainerInitializer.callStartup(ContainerInitializer.java:106) at org.eclipse.jetty.annotations.ServletContainerInitializerListener.doStart(ServletContainerInitializerListener.java:107) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:81) 在org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:58) 在org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:96)
web.xml为空。有一个应用程序类,如:
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("/appPath")
public class MyApplication extends Application {
}
为什么会抛出NPE?
答案 0 :(得分:0)
对我来说,原因是MyApplication Class位于默认包中(不要问为什么,在IDE中创建它时笨拙)。
将其移至包裹即刻解决了问题。