Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает Spring DI / 3 сообщений из 3, страница 1 из 1
30.04.2014, 01:56
    #38629595
aby_2503
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает Spring DI
Подскажите, что я упустил. Есть Rest-service
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
@Path("/openWeather")
public class RestServiceImpl {
   
    private FeedHandlerBean feedHandlerBean;

    @PostConstruct
    private void inject(){
        feedHandlerBean = Context.getBeanFactory().getBean("OpenWeatherHandlerBean",FeedHandlerBean.class);
    }

    @GET
    @Produces("text/plain")
    public String getWeatherInfo(@QueryParam("search") String suffix) {
        return feedHandlerBean.getWeather(suffix);
    }
}



В нем из контекста достаетя этото бин:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
@Service("OpenWeatherHandlerBean")
@Scope(BeanDefinition.SCOPE_PROTOTYPE)
public class OpenWeatherHandlerBean implements FeedHandlerBean {
    private static Logger logger = LoggerFactory.getLogger(OpenWeatherHandlerBean.class);

    @Resource(name = "OpenWeatherFeedHandler")
    private FeedHandler feedHandler;

    @Override
    public String getWeather(String suffix) {
        try {
            return feedHandler.getFeed(suffix);
        } catch (IOException e) {
            logger.error("Exception: ", e);
        }
        return null;
    }

    public FeedHandler getFeedHandler() {
        return feedHandler;
    }

    public void setFeedHandler(FeedHandler feedHandler) {
        this.feedHandler = feedHandler;
    }
}



Почему feedHandler выбрасывается Nullpointer. Хотя судя по логам контейнер присканировании определяет наличие бина. Вот xml
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:c="http://www.springframework.org/schema/c"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/util
http://www.springframework.Org/schema/util/spring-util-3.l.xsd">
    <context:annotation-config/>
    <context:component-scan base-package="org.weather"/>
</beans>
...
Рейтинг: 0 / 0
30.04.2014, 12:47
    #38630019
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает Spring DI
А в чем смысл миксовать JAX-RS\CDI и Spring DI? Возьмите уже Spring MVC для REST. Ничем не хуже.
И что за класс такой Context? Чего я его в JavaDoc не вижу?
...
Рейтинг: 0 / 0
30.04.2014, 16:52
    #38630416
aby_2503
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает Spring DI
Решил замиксовать эксперимента ради. Так сказать - использовать Spring исключительно для DI
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает Spring DI / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]