首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过Spring XmlWebApplicationContext指定相对资源路径

通过Spring XmlWebApplicationContext指定相对资源路径
EN

Stack Overflow用户
提问于 2009-07-14 03:35:36
回答 3查看 7.3K关注 0票数 1

实际的问题是:是否有一种方法可以让XmlWebApplicationContext使用相对于上下文位置的路径来加载资源?为了清楚起见,让我们说“上下文位置”是通过setConfigLocation()方法指定的第一个文件的位置。

详细解释如下:

我在web层使用Spring,在中间层使用Spring。适当的上下文是按层次定义的,如春季文献中所描述的: web在my-servlet.xml中定义,服务等在通过ContextLoaderListener加载的services.xml中定义。中间层可以与web层一起部署(例如,整个任务在ServletContainer中运行),也可以单独部署(在这种情况下,services.xml被定义远程存根的remote-services.xml替换)。除以下问题外,整个设置工作得很完美:

我有某些资源(额外的XML文件,您有什么)位于与services.xml相同的文件夹中,这些文件夹需要由上述服务访问。这些资源在services.xml中使用相对路径指定为依赖项。当中间层单独部署时,工作正常,但在servlet容器中部署时就不行了。在后一种情况下,中间层上下文被实例化为XmlWebApplicationContext,它基于servlet上下文根加载所有资源,这意味着我必须用/WEB/作为前缀,这是我真正想要避免的。使用PropertyPlaceholderConfigurer也带来了类似的问题。

我知道我可以在某种程度上通过从类路径加载资源来解决这个问题,但这也不理想--对于独立部署来说,这意味着我需要向类路径添加配置文件夹,对于web部署,意味着所有东西都必须在WEB/类下复制。

有什么想法吗?

EN

Stack Overflow用户

发布于 2009-07-14 09:40:47

我同意这是相当烦人的。我通过执行您建议的操作来解决这个问题,这就是将我的spring配置放在类路径上,所以即使我仍然使用完全合格的导入,它们在任何环境下都能工作。

不过,我不知道为什么您的类路径配置需要这么复杂。这些文件可以与java文件一起放在java源文件夹下,因此它们可以得到相同的处理。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1123335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档