3
我想獲取Tomcat中部署的澤西島資源的servlet上下文,但每當我嘗試這樣做,我都會得到一個空指針異常。我的代碼如下:JAX-RS/Jersey + Tomcat ServletContext爲null
@Path("/resource")
public class MyResource {
@Context ServletContext context;
public MyResource(){
System.out.println("Context: "+context.getRealPath("/"));
}
}
我的web.xml配置是這樣的:
<servlet>
<servlet-name>MyResource</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.mypackage</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>MyResource</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
任何線索什麼我的問題可能是?使用Tomcat 6.0.33和Jersey 1.12。
謝謝,這有幫助。 – Ryan
我有同樣的問題。我嘗試使用Tom的代碼(我複製並粘貼了它),但是我從構造函數和方法中都得到了null兩次。我從運行在同一服務器上的JSP頁面調用了該方法,只是簡單地執行'new MyResource()。getASubResource()' –
@Krige在使用REST客戶端調用資源方法時會發生嗎? – toniedzwiedz