2012-02-07 2 views
0

Вслед за How do I inject a Spring bean into Apache Wink?Фасоль вводят в Apache Wink с Spring не зарегистрированы

Я сейчас, используя Подмигнуть-пружинный поддержку и я думал, что все настроено правильно.

web.xml включает в себя:

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
     classpath:META-INF/wink/wink-core-context.xml 
     classpath:applicationContext.xml 
    </param-value> 
</context-param> 

<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 

<servlet> 
    <servlet-name>restServlet</servlet-name> 
    <servlet-class>org.apache.wink.server.internal.servlet.RestServlet</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>restServlet</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 

META-INF/подмигивание/подмигивание-ядро-context.xml содержит:

<bean class="org.apache.wink.spring.Registrar"> 
    <property name="instances"> 
     <set> 
      <ref bean="myservice" /> 
     </set> 
    </property> 
</bean> 

<bean id="myservice" class="mystuff.ServiceImpl"/> 

Там в @Autowired аннотаций в mystuff.ServiceImpl, который вводит другой Spring материал, и mystuff.ServiceImpl реализует аннотированный интерфейс JAX-RS и сам включает в себя аннотацию JAX-RS @Path("/services").

Я могу видеть Весеннюю загрузку этого материала просто отлично, в том числе фасоль myservice. Однако, когда я запрашиваю свои ресурсы, я получаю 404 не найден. Как начинается Wink, я могу видеть несколько записей журнала, которые могут указывать на проблему:

applicationConfigLocation property was not defined

Using application classes null named in init-param applicationConfigLocation

я пропустил что-то где-то? Любой совет?

ответ

0

Проблема была в моем недоразумении в документах.

С пружинной конфигурацией META-INF/server/wink-core-context.xml прилагается wink-spring-support. Это регистрирует BeanPostProcessors, которые фактически выполняют настройку и на которые должны ссылаться: contextConfigLocation.

Мне показалось, что я разместил свою конфигурацию там, что объясняет, почему приложение не зарегистрировалось в Wink при запуске.