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

Jersey@InjectParam创建一个新对象,而不是从Spring中获取

楚和悌
2023-03-14

我有一个使用Spring的Jersey应用程序,我正在使用@InjectParam,希望Jersey能从Spring容器中获取对象(以及文档中所写的内容),但Jersey似乎是在创建对象,而不是向Spring索要对象。

有没有办法检查Spring国际奥委会是否在泽西岛注册?

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:appContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
    <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<servlet>
    <servlet-name>SpringDispatcher</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>SpringDispatcher</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app> 

我的类提供基本的访问工厂但工厂是新的

public FileStoreService(@InjectParam("dataAccessFactory") factory ) {  
   this.factory = factory;    
} 

我已经添加了@Component,但仍然没有。

共有1个答案

劳仲渊
2023-03-14

使用了错误的servlet。应该是的

<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>

当前的容器使用Jersey自己的容器,该容器将仅使用默认构造函数创建对象。Spring Servlet允许Jersey连接到Spring容器。

 类似资料:
  • 我希望能够访问一个非静态变量和非静态方法从另一个类,而不创建一个新的对象。 在我们项目的现有代码中,由于新对象的创建,它的创建类实例化问题。 } //Class2//这里继承的类配置是另一个类,例如Class3,它是必需的,我们不必扩展Class1,即DataBaseQueries 公共类CommonActions扩展配置{ 公共整数ecSample{G_IntSavedValueValue=EC

  • 问题内容: 例如: 相对于: 一个比另一个更有效吗? 问题答案: 返回之前分配给临时变量使您有机会从newPerson()中进行错误检查和更正。返回新的调用要求newPerson()方法的调用者捕获错误并从错误中恢复。

  • 我正在使用为Redis添加和检索数据。但一旦数据写入redis,我可以看到多个键,而不是一个。到期时,只有一个密钥被移除,其余的密钥仍然存在于Redis中。 要保存, 但是当我打开并运行时,我可以看到, 在设置之后,如果再次运行相同的命令,我可以看到, 这些附加密钥是什么,以及为什么使用完整包名和随机唯一标识符创建这些密钥。 谢谢

  • 问题内容: 所以,我不确定那是什么。如果在 ModuleA中 ,我有: 在 ModuleB中 ,我有: 在主程序中,我有: 因此,当我运行主程序时,我想我将创建两个猫鼬“实例”;一个连接到pathA,一个连接到pathB,对吗? 另外,在模块B中,在我连接到pathB之前,它是连接到pathA还是什么都没有? 谢谢。 问题答案: 我刚刚对最新的节点V0.4.6做了一些测试。我确认了以下内容: 从“

  • 我对RxJS很陌生,所以如果这个问题已经得到回答,我提前道歉。 我有一个Angular 2应用程序,在其中一个组件中有一个普通对象。我将UI绑定到这个对象。我想做的是能够捕获对这个对象的所有更改,无论它们来自代码还是来自用户更改其中一个字段。 我正在查看可观察对象,但似乎只有通过Emit方法推送新对象时,订阅者才能接收通知。例如,在属性绑定到输入字段的情况下,这将如何工作? 有更好的方法吗? 这是

  • 我有一个方法,它应该从JSON返回不同的对象,这取决于参数中的类类型。我试着根据参数返回一个对象列表,但是我只把LinkedHashMap放入ArrayList。 我搜索了很多,但是在解决方案中,类类型的所有地方都是硬编码的。 有没有一种不用硬代码就能解决这个问题的方法? 我只想传递类类型并通过一个方法获取对象。 当我的对象有关系时,我得到这个例外 无法识别的字段"字段"(类model.orm.部