2013-07-15 27 views
5

Projem için Resteasy ve Spring kullanıyorum. Resteasy belgesi dediği gibi: http://docs.jboss.org/resteasy/docs/3.0.1.Final/userguide/html_single/index.html#RESTEasy_Spring_Integration.Spring ContextLoadener olmadan Resteasy ve Spring entegrasyonuLoadListener

ben web.xml dosyasında bir dinleyici eklemeniz gerekir:

<listener> 
    <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class> 

<listener> 
    <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class> 

Ancak Projemdeki biz de bir manolya denilen cms ve manolya kullanılan Ayrıca SpringContextLoaderListener için bir uygulama vardır. Her iki bağlam dinleyicisini de koyarsam. Uygulamayı çalıştırdığımda manolya başlamayacak.

Yani Resteasy belgeye göre şunları söyledi: Eğer fasulye fabrikaları oluşturmak için bir Bahar ContextLoaderListener kullanmazsanız

, o zaman elle org.jboss.resteasy örneğini ayırarak RESTeasy BeanFactoryPostProcessor kayıt olabilirsiniz .plugins.spring.SpringBeanProcessor. Bir ResteasyProviderFactory ve Registry örneklerini, ServletContext öznitelikleri org.jboss.resteasy.spi.ResteasyProviderFactory ve org.jboss.resteasy.spi.Registry'den edinebilirsiniz. (Gerçekten bu sınıfların FQN dizesi). Ayrıca, Servlet Bağlamından Kayıt Defteri ve ResteasyProviderFactory'ye referanslar otomatik olarak enjekte edecek bir org.jboss.resteasy.plugins.spring.SpringBeanProcessorServletAware vardır. (Restria'yı önyüklemek için RestasyBootstrap'i kullandıysanız).

Resteasy ContextLoaderListener'ı kullanmadan bunu nasıl başarabileceğimi bilen var mı? İlkbahar applicationContext xml dosyasına koymak için neye ihtiyacım var?

+0

Birisi bunu biliyor mu? – ttt

cevap

3

Ayrıca, RestEasy SpringContextListener ile ilgili de sorun yaşadım (özellikler yer tutucu ${...} işlenmedi - RESTEASY-787, Spring java config çalışmadı vb.).
Bu yüzden RestEasy SpringContextListener'u bırakmak ve varsayılan org.springframework.web.context.ContextLoaderListener ya da ihtiyacınız olan herhangi bir dinleyiciyi kullanmak yeterlidir. Sadece bu gibi Bahar XML yapılandırma Bahar fasulye tanımlamak zorunda: RestEasy daha

<bean class="org.jboss.resteasy.plugins.spring.SpringBeanProcessorServletAware"/> 

kendi özel SpringContextListener olmadan bile çalışmalıdır. Benim için çalışıyor.