当前位置: 首页 > 知识库问答 >
问题:

@Autowired在使用带有Spring的Jersey时不工作

尉迟安民
2023-03-14

我正试着用带Spring的泽西。但无论如何,我不明白为什么Spring依赖项没有被注入到Rest类中。

com.myapp.rest

@Component
@Scope("request") 
@Path("/home")
public class ChartResource {

@Autowired
ChartService chartService;

@GET
@Path("/chart")
@Produces(APPLICATION_JSON)
public Bean getChart() {
        return chartService.retrieveChart();


}

我的web.xml文件如下所示

<servlet>
    <servlet-name>myapp</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>org.codehaus.jackson.jaxrs;com.myapp.rest</param-value>
    </init-param>       
    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>org.codehaus.jackson.jaxrs</param-value>
    </init-param>   
    <load-on-startup>1</load-on-startup>
</servlet>

My ApplicationContext.xml是标准的,并指定组件扫描的基本包:

<beans:beans xmlns="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

<annotation-driven />
<resources mapping="/resources/**" location="/resources/" />


<context:component-scan base-package="com.myapp" />

</beans:beans>

共有1个答案

王楚青
2023-03-14

尝试添加

<context:annotation-config />

我不确定您需要什么才能使Jersey的注释工作,但是@autowired是一个Spring注释,因此您需要使用 的Spring版本才能使其正常工作。

 类似资料:
  • 我无法在扩展spring安全类(org.springframework.security.web.authentication.simpleurlauthenticationsuccesshandler)的类内部“自动连接”。 我通过在security-config.xml中添加已经在xml spring配置文件中编写的以下代码使其工作:、和我自动连线的bean。 我有两个问题: 为什么我要编写两

  • 问题内容: 我一直在开发一个gwt应用程序,该应用程序应该具有一个休息服务来访问数据库,包括它自己的数据库和其他远程数据库。我使用Spring来更好地使用数据库(objectdb),而不是在Jersey实习。这是给出问题的代码: User.java 客户.java CustomerDAO.java JpaDAO.java 最后是CustomerServiceImpl.java web.xml正确编

  • 我在GWT+Spring Boot中创建了一个应用程序,当我尝试使用-时,我得到。显然不起作用,没有将bean插入正确的位置。我怎样才能解决这种情况? 分派传入RPC调用时发生异常 ExpectiontedException:服务方法“public abstract java.util.list com.mygwt.springbootapp.client.userservice.list()”引

  • 我们刚刚开始一个新项目,正在研究Spring启动来启动我们的开发。Spring启动看起来很强大,但是有些魔法正在发生,我们还不明白。 我已经克隆了spring boot示例并运行了Jersey示例。到现在为止,一直都还不错。 然后我将其转换为Groovy/Gradle。 构建脚本的相关部分如下所示 运行gradle bootRun时,应用程序无法启动 例外是 为了解决这个ClassNotFound

  • 我问了一个类似的问题,以为得到了回答。然而,昨天它停止工作,所以我要再问一遍,但我的修改类。我希望这是正确的协议.... 我有一个spring启动网站,它在启动时抛出一个空指针,因为其中一个类没有自动连线。以下是我的设置: 在子包中,我有:package com.company.product.configuration@configuration@componentScan()public cl

  • 我一定错过了一些简单的东西,但是我很难将Autowired属性分配给bean。这里贴出的所有类似答案似乎都围绕着三种解决方案之一: null 我试图制作一个最简的bean来表示我的DAO并将其注入到Web服务中。 DAO接口: DAO实现: 我错过了什么?