繁体   English   中英

Spring-WS中的自定义上下文

[英]Custom Context in Spring-WS

我试图以与我的Spring上下文类似的方式自定义spring-ws servlet上下文。 对于初始上下文(服务器启动时初始化),我扩展了ContextLoader并实现了ServletContextListener类,该类类似于org.springframework.web.context.ContextLoaderListener类的工作。 我能够通过重写customizeContext(ServletContext servletContext, ConfigurableWebApplicationContext applicationContext)方法来自定义初始上下文,并基于属性添加/删除可选的上下文xml文件。 我可以将此类设置为web.xml文件中的侦听器,而不是Spring中的默认ContextLoaderListener ,它可以按预期运行。

我正在针对spring-ws servlet上下文(在WEB-INF\\spring-ws-servlet.xml定义的所有bean)采取类似的方法,但是我没有找到任何解决方案。 我唯一能想到的是让我的自定义上下文加载器还生成一个XML文件,其中包含“可选” bean,并让spring-ws-servlet上下文导入此文件。 但是,这只是解决方案的工作,我认为必须有更好的方法。 在调用第一个Web服务时,是否有人对如何自定义spring-ws servlet上下文有任何建议?

我正在使用Spring 2.5.6和Spring-WS 1.5.9

提前致谢。

我能够找到解决方案。 我创建了一个扩展MessageDispatcherServlet的类,并覆盖了postProcessWebApplicationContext方法。 在该方法中,我根据我的属性有条件地添加了可选的上下文位置。 调用此方法后,父级将在上下文上调用refresh()方法,并将加载其他上下文。

有人向我建议的另一个解决方案是创建自定义名称空间,并创建一个名称空间处理程序以在条件满足时执行导入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM