我使用java,spring-ws並且有一個web服務。春天或servlet請求範圍問題
每次我運行一個新的請求到我的web服務我希望一切都重置,所有的變量都是新鮮的和空的。所以我在我的web服務的application-context.xml中添加了「範圍=請求」,但我仍然保留了以前請求中保存的變量值(即使不是靜態變量)。
我的web服務(作爲jar文件)被用作另一個主要web項目的插件。我從這個主Web項目的web.xml文件中引用了我的web服務;
<servlet>
<servlet-name>mws</servlet-name>
<servlet-class>org.springframework.ws.transport.http.MessageDispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/resources/webservice/applicationContext-WebService.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
在這個web.xml中,我定義爲主營項目的另一個調度的servlet 而且,是可能的,它創造2個spring容器和他們發生衝突?
這是我在Web服務的appcontext.xml文件定義範圍:
<bean id="infService" class="com.ws.im.InfService" scope="request">
<property name="webServiceConfiguration" ref="wsConfiguration" />
<property name="properties">
<bean class="com.ws.PropertyResource">
<property name="resource" value="/WEB-INF/clientspecific/Inf.properties" />
</bean>
</property>
</bean>
所以我想每次我跑我的主要web項目在它開始我的web服務的應用程序context.xml文件加載一次並且無論我改變它的範圍它不起作用導致主項目定義範圍?我可以定義上面的servlet的範圍嗎?或者這個想法是完全錯誤的,我在我的web服務配置xml中做錯了什麼?
感謝
能否請你展示,你加入'的applicationContext-WebService.xml''範圍= request'? – artbristol 2011-06-01 12:25:09
我添加了代碼 – Spring 2011-06-01 13:14:39