プロジェクトに Resteasy と Spring を使用しています。Resteasy ドキュメントが言ったように: http://docs.jboss.org/resteasy/docs/3.0.1.Final/userguide/html_single/index.html#RESTEasy_Spring_Integration。
web.xml ファイルにリスナーを追加する必要があります。
<listener>
<listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
<listener>
<listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>
ただし、私のプロジェクトでは magnolia という cms も使用しており、magnolia には SpringContextLoaderListener の実装もあります。両方のコンテキストリスナーを配置した場合。アプリを実行してもマグノリアが起動しません。
したがって、Resteasy のドキュメントによると、次のように述べられています。
Spring ContextLoaderListener を使用して Bean ファクトリを作成しない場合は、org.jboss.resteasy.plugins.spring.SpringBeanProcessor のインスタンスを割り当てることで RESTeasy BeanFactoryPostProcessor を手動で登録できます。ServletContext 属性 org.jboss.resteasy.spi.ResteasyProviderFactory および org.jboss.resteasy.spi.Registry から ResteasyProviderFactory および Registry のインスタンスを取得できます。(実際には、これらのクラスの文字列 FQN)。org.jboss.resteasy.plugins.spring.SpringBeanProcessorServletAware もあり、サーブレット コンテキストからレジストリと ResteasyProviderFactory への参照を自動的に挿入します。(つまり、Resteasy のブートストラップに RestasyBootstrap を使用した場合)。
Resteasy ContextLoaderListener を使用せずにそれを達成する方法を知っている人はいますか? 春のapplicationContext xmlファイルに何を入れる必要がありますか?