Spring bean에 @Resource
이라는 주석이 달린 필드에 문제가 있습니다. 내가 가진 무엇 :Spring @Resource Handling
setter 메소드와 필드는, 내 배포 설명자에 @Resource
@Resource
private URL someUrl;
public void setSomeUrl(URL someUrl) {
this.someUrl = someUrl;
}
<env-entry>
태그를 주석 (web.xml을)
<env-entry>
<env-entry-name>someUrl</env-entry-name>
<env-entry-type>java.net.URL</env-entry-type>
<env-entry-value>http://somedomain.net/some/path</env-entry-value>
</env-entry>
응용 프로그램은 시작에 실패 BeanCreationException
, 나는 스프링이 관리하는 빈을 주입하기를 원하기 때문에 스프링 기대하지 않기 때문에 기대하지 않는다. Spring이 @Resource
을 처리하고 JNDI 자원을 검색하길 바란다.
이것은 Spring 2.5.6SEC03이며, 다른 @Component
인스턴스에 대한 bean 자체에는 @Service
주석이 달려 있습니다. 이 경우 서블릿 컨테이너는 Tomcat 7이지만 궁극적으로 Weblogic 10에 배치 될 것입니다. 그래서 두 가지 모두에서 작동하는 솔루션을 원하지만, Weblogic은 필수품입니다.
스프링 2.5에서이 기능을 잘못 사용하고 있습니까? 일반적으로? 실종 됐어? JNDI에 대해 내가 오해하는 부분이 있습니까? 모든 도움을 주시면 감사하겠습니다. 감사.
위대한,이 완전히 작동! 또한 주석 본문의 "mappedName"값을 sprcifying하여 CommonAnnotationBeanPostProcessor가 JNDI 조회를 수행하도록 할 수 있음을 발견했습니다. 모든 말, 그리고이 일을 넣어 후, 나는 우리의 표준 기업의 배포 프로세스가 여러 배포 설명자를 지원하지 않습니다 배웠습니다. 나는 모든 배포에서 같은 것을 사용하기로되어 있습니다. 따라서이 방법은 효과가 없습니다. –