spring @Resource 注入问题
servlet引入@Resource报错:
javax.naming.NameNotFoundException: Name testService is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
at org.apache.catalina.util.DefaultAnnotationProcessor.lookupFieldResource(DefaultAnnotationProcessor.java:276)
at org.apache.catalina.util.DefaultAnnotationProcessor.processAnnotations(DefaultAnnotationProcessor.java:187)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1153)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
代码如下:
servlet :
public class testServlet extends HttpServlet {
private static final long serialVersionUID = -4732854077814547321L;
@Resource(name = TestService.IOC_BEAN_ID)
private TestService test1;
service:
public interface TestService {
public static final String IOC_BEAN_ID = "testService";
public Map getSysdate();
}
@Service(TestService.IOC_BEAN_ID)
public class TestServiceImpl extends BaseService implements TestService{
public Map getSysdate(){
Map<String,Object> sysdateMap = (Map<String, Object>) ibatisClient.queryForObject("test.test", "");
return sysdateMap;
}
}
spring 配置:
<context:annotation-config />
<context:component-scan base-package="com.test" />
javax.naming.NameNotFoundException: Name testService is not bound in this Context
at org.apache.naming.NamingContext.lookup(NamingContext.java:770)
at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
at org.apache.catalina.util.DefaultAnnotationProcessor.lookupFieldResource(DefaultAnnotationProcessor.java:276)
at org.apache.catalina.util.DefaultAnnotationProcessor.processAnnotations(DefaultAnnotationProcessor.java:187)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1153)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
代码如下:
servlet :
public class testServlet extends HttpServlet {
private static final long serialVersionUID = -4732854077814547321L;
@Resource(name = TestService.IOC_BEAN_ID)
private TestService test1;
service:
public interface TestService {
public static final String IOC_BEAN_ID = "testService";
public Map getSysdate();
}
@Service(TestService.IOC_BEAN_ID)
public class TestServiceImpl extends BaseService implements TestService{
public Map getSysdate(){
Map<String,Object> sysdateMap = (Map<String, Object>) ibatisClient.queryForObject("test.test", "");
return sysdateMap;
}
}
spring 配置:
<context:annotation-config />
<context:component-scan base-package="com.test" />
...全文
相关推荐
详解Spring关于@Resource注入为null解决办法
主要介绍了详解Spring关于@Resource注入为null解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
详解Spring注解--@Autowired、@Resource和@Service
本篇文章主要介绍最重要的三个Spring注解,也就是@Autowired、@Resource和@Service,具有很好的参考价值。下面跟着小编一起来看下吧
如何解决redisTemplate注入为空问题
主要介绍了如何解决redisTemplate注入为空问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
【Java面试】@Resource 和 @Autowired 的区别.doc
【Java面试】@Resource 和 @Autowired 的区别.doc
详解Java Spring各种依赖注入注解的区别
主要介绍了详解Java Spring各种依赖注入注解的区别的相关资料,需要的朋友可以参考下


