您的位置:首页 > 编程语言 > Java开发

spring整合Jersey 无法注入service的问题

2014-09-19 17:29 429 查看
现象:

        action中的@autowired注入service或dao失败,报空指针异常

原因:

        造成该问题的原因是你并没有做好spring和jersey的整合工作,检查你的web.xml文件,jersey的配置肯定是下面这样,

<servlet>
<servlet-name>JerseyServlet</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.demo</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JerseyServlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>


解决的办法:

        首先你需要确认是否引入了jersey-spring.jar的jar包,如果没有,请先导入。

        其次请将jersey的配置改成下面这样,

<servlet>
<servlet-name>JerseyServlet</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.demo</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JerseyServlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>


        大家可能已经看到,区别在于servlet-class的类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jersey spring