Я работаю над проектом JAX-WS, и теперь я хотел бы добавить внедрение зависимости для одной из моих утилит.
У утилиты есть интерфейс;GeocodeUtil и две реализации, GeocodeUtilGoogleImpl и GeocodeUtilYahooImpl.Теперь в моем классе обслуживания у меня есть следующее:
public class MyService {
private GeocodeUtil geocodeUtil;
/* getter and setter for geocodeUtil */
}
В моем applicationContext.xml у меня есть следующее:
<bean id="geocodeUtil" class="com.company.GeocodeUtilGoogleImpl"/>
<bean id="myService" class="com.company.MyService">
<property name="geocodeUtil" ref="geocodeUtil" />
</bean>
Вот мой web.xml (только часть, связаннаяSpring):
<!-- Spring context -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!-- Listeners -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
Когда я создаю экземпляр объекта MyService и пытаюсь использовать geocodeUtil, я получаю исключение NullPointerException, и мне кажется, что реализация не была внедрена.Что мне кажется странным, так это то, что как только я удаляю метод получения / установки, приложение запускается при запуске, и Spring жалуется на отсутствующий метод установки / получения, что заставляет меня думать, что XML-конфигурация на самом деле правильная.1013 * Я не использую пружинные Java-аннотации.
Любая помощь приветствуется.