我目前正在使用 Spring -WS 创建 Web 服务。 我想让请求到达我自己的消息调度程序类。因此,我对 web.xml 和 sping-congfig.xml 文件进行了必要的配置更改。 当 spring 为我的消息调度程序加载 bean 时,我看到一个错误, 它尝试在我的包中查找具有调度程序类的属性文件。例如,如果我的类是 AccountMessageDispatcher,它会在我创建该类的包中查找 AccountMessageDispatcher.properties 文件,我可以通过将属性文件保留在那里来运行它,但我想将属性文件保留在我的资源目录下有我的应用程序所需的其他属性文件。
任何人都可以帮助我或指出我做错了什么的正确方向吗?
最佳答案
如果我们查看默认的 MessageDispatcher
基础设施,我们会发现它会读取适当的属性文件 - org.springframework.ws.server.MessageDispatcher.properties
。
如您所见,该文件与原始 MessageDispatcher
类位于同一包中。
根据您的担忧,您是对的:该文件应位于源的 resources
目录中。但是,如果您使用 Maven 或 Gradle 等普通构建系统,所有资源
都会与类一起打包到目标 jar 中。
要实现您的要求,您只需在资源
中创建与原始AccountMessageDispatcher
相同的目录树。
实际上任何 Java 包都是最终 jar 中的一个目录。
关于spring-ws - Spring Web 服务消息调度程序重写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28461343/