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

关于Jersey整合Spring注入出现NullPointException问题

2015-10-20 00:00 453 查看
摘要: 关于Jersey整合Spring注入出现NullPointException问题

解决方案如果:

一、web.xml

<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<!--关键是这两行,其中com.example.MyApplication是自定义的一个类-->
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.example.MyApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/webapi/*</url-pattern>
</servlet-mapping>

package com.example;

import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.server.spring.scope.RequestContextFilter;

/**
* Spring HelloWorld Web Application configuration.
*
* @author Jakub Podlesak (jakub.podlesak at oracle.com)
*/
public class MyApplication extends ResourceConfig {

/**
* Register JAX-RS application components.
* 如果要和spring要个jersey结合,必须得在jersey 中注册
*/
public MyApplication() {
register(RequestContextFilter.class);
register(SpringRequestResource.class);
}

import org.springframework.stereotype.Component;

import com.example.emp.EmpService;

@Path("spring-hello")
@Component
public class SpringRequestResource {
@Resource
private EmpService empService;
@GET
@Produces(MediaType.TEXT_PLAIN)
public String getHello() {
return empService.greet("world");
}




已经执行成功,具体为什么要注册,有时间看完源码给大家分享出来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: