我有一个使用 Struts 和 Spring 的 Maven Overlay 项目。
我正在使用 Spring 扩展对象来扩展业务对象以提供一些附加功能。此外,我正在覆盖业务对象中的几个 bean。为此,我创建了 3 个 Spring 配置文件 -
DevelopmentProposal.xml(业务对象名称 - 仅包含我定义查找和查询定义的元素和属性定义)
DevelopmentProposalOverrides.xml(从原始 DevelopmentProposal.xml 文件复制特定的 bean 并更改标签名称等...)
DevelopmentProposalExtension(在这里为我的扩展定义了我的新属性)
为此,我设置了我的自定义数据字典目录(我的所有 XML 文件所在的位置)并使用该dataDictionaryPackages
属性将我的 CustomSpringBeans.xml 指向该目录。
这一切都在工作,直到昨天我在应用服务器上的 src 存储库上进行了 SVN 更新,突然我所有的覆盖都停止了工作。该扩展程序仍在工作,只是我的覆盖受到影响。
在检查了 Web 服务器日志文件后,我注意到我对覆盖层中 bean 的更改被拾取,但紧接着,来自默认项目的 bean 被加载,从而破坏了我的更改。
这一切的奇怪之处在于,在我的 Windows 开发环境中——一切正常!(Windows 7、Tomcat 6.0.x、Java 1.7.x)
它不适用于应用程序服务器(Linux RedHat Box)。
问题 -
这听起来更像是一个环境问题,还是这很可能是我的 Spring 配置文件以及我如何设置它们来决定不同的加载顺序(这恰好在开发环境中工作)?
任何帮助/建议将不胜感激。