У меня проблемы с полем, помеченным как @Resource
в бобе Spring. Что у меня есть:
Поле с методом установки, аннотированное @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 добавляла bean-компонент, управляемый Spring. Я хочу, чтобы Spring обработал @Resource
и получил ресурс JNDI.
Это Spring 2.5.6SEC03, а сам bean-компонент аннотирован @Service
для автоматического подключения к другим @Component
экземплярам. Контейнером сервлетов в данном случае является Tomcat 7, но в конечном итоге он будет развернут на Weblogic 10, поэтому, хотя в идеале я хотел бы, чтобы решение работало на обоих, Weblogic является обязательным.
Я неправильно использую эту функцию в Spring 2.5? В общем? Я что-то пропустил? Что-то я не так понимаю о JNDI? Вся помощь приветствуется. Благодаря.