Java 我注射这些春豆有什么不对?使用自动布线

Java 我注射这些春豆有什么不对?使用自动布线,java,spring,spring-mvc,mule,spring-annotations,Java,Spring,Spring Mvc,Mule,Spring Annotations,这是问题的后续,用作参考 这是我修改的spring context.xml <bean id="sampleApacheConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory" lazy-init="true"> <property name="brokerURL" value="tcp://localhost:61616"/> <property name="u

这是问题的后续,用作参考

这是我修改的
spring context.xml

<bean id="sampleApacheConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory" lazy-init="true">
    <property name="brokerURL" value="tcp://localhost:61616"/>
    <property name="userName" value=“kodeseeker"/>
    <property name="password" value=“mypassword"/>

</bean>

 <bean id="connectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
        <constructor-arg ref="sampleApacheConnectionFactory" />
    </bean>

    <!--  Default Destination Queue Definition-->
    <bean id="defaultDestination" class="org.apache.activemq.command.ActiveMQQueue">
        <constructor-arg index="0" value="test.Foo"/>
    </bean>

    <!-- JmsTemplate Definition -->
    <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
        <property name="connectionFactory" ref="connectionFactory" />
        <property name="defaultDestination" ref="defaultDestination" />
    </bean>

    <!-- Message Sender Definition -->
    <bean id="messageSender" class="com.mypackage.Publisher2">
    </bean>

<!-- Message Receiver Definition -->
    <bean id="messageReceiver" class="com.mypackage.Listener">

    </bean>
       <bean class="org.springframework.jms.listener.SimpleMessageListenerContainer">
        <property name="connectionFactory" ref="connectionFactory" />
        <property name="destinationName" value="test.Foo" />
        <property name="messageListener" ref="messageReceiver" />
    </bean>
 <context:component-scan base-package="com.mypackage" /> 
    <bean name=“publisher" class=“com.mypackage.Publisher2"/>
        <bean name="updateHandler" class="com.mypackage.UpdateHandlerImpl”/>    

</beans>

但是,尽管使用
@Controller
注释了类,并在上下文文件中声明了bean。我发现
updateHandler
总是空的。我到底做错了什么?

创建一个Jersey配置类并将其注册为bean,然后在
baseapimpl
类上删除
@Component
@ComponentScan
,希望它能工作,在我的情况下,我使用的是Spring boot

import org.glassfish.jersey.server.ResourceConfig;
import javax.ws.rs.ApplicationPath; 

@ApplicationPath(value = "/<contextpath>")
public class JerseyConfig extends ResourceConfig{

  public JerseyConfig() {
    packages(true, "<your @Path classes package>");
  }
}
import org.glassfish.jersey.server.ResourceConfig;
导入javax.ws.rs.ApplicationPath;
@应用程序路径(value=“/”)
公共类JerseyConfig扩展了ResourceConfig{
公共运动衫{
包装(正确,“”;
}
}

创建一个Jersey配置类并将其注册为bean,然后在
BaseApiImpl
类上删除
@Component
@ComponentScan
,希望它能工作,在我的情况下,我使用的是Spring boot

import org.glassfish.jersey.server.ResourceConfig;
import javax.ws.rs.ApplicationPath; 

@ApplicationPath(value = "/<contextpath>")
public class JerseyConfig extends ResourceConfig{

  public JerseyConfig() {
    packages(true, "<your @Path classes package>");
  }
}
import org.glassfish.jersey.server.ResourceConfig;
导入javax.ws.rs.ApplicationPath;
@应用程序路径(value=“/”)
公共类JerseyConfig扩展了ResourceConfig{
公共运动衫{
包装(正确,“”;
}
}

您的更新处理程序bean位于其他标记的内部。。。也许这就是你的背景混乱的原因。你应该格式化它,你的bean是JAX-RSbean而不是Springbean。您将有两个实例,一个是spring管理的,一个是jax-rsbean。对正在使用的框架使用适当的集成,或者使用SpringMVC公开rest端点。另外,
@ComponentScan
不适用于这个只在
@Configuration
类上有用的类。@Nadir,我更正了输入错误,但错误仍然存在。@M.Deinum您有集成的示例吗?我对Spring很陌生。你的更新处理程序bean在里面,在其他标记里面。。。也许这就是你的背景混乱的原因。你应该格式化它,你的bean是JAX-RSbean而不是Springbean。您将有两个实例,一个是spring管理的,一个是jax-rsbean。对正在使用的框架使用适当的集成,或者使用SpringMVC公开rest端点。另外,
@ComponentScan
不适用于这个只在
@Configuration
类上有用的类。@Nadir,我更正了输入错误,但错误仍然存在。@M.Deinum您有集成的示例吗?我对春天很陌生。