Spring Web 服务消息调度程序覆盖

Spring Web Service Message Dispatcher overrriding

我目前正在使用 Spring -WS 创建 Web 服务。 我想让请求到达我自己的 Message Dispatcher Class。所以我对 web.xml 和我的 sping-congfig.xml 文件进行了必要的配置更改。 当 spring 为我的 Message Dispatcher 加载 bean 时,我看到一个错误, 它试图在我的包中查找具有 Dispatcher Class 的属性文件。例如,如果我的 class 是 AccountMessageDispatcher,它会在我创建 class 的包中查找 AccountMessageDispatcher.properties 文件,我可以通过将属性文件放在那里来获取它 运行 ,但我想将属性文件保留在我的资源目录下,该目录具有我的应用程序所需的其他 属性 文件。

任何人都可以帮助我或指出我做错了什么的正确方向吗?

如果我们查看默认的 MessageDispatcher 基础架构,我们会发现它会读取适当的属性文件 - org.springframework.ws.server.MessageDispatcher.properties

如您所见,此文件与原始文件位于同一包中 MessageDispatcher class。

根据您的担心,您是对的:该文件应该位于 resources 源目录中。但是,如果您使用像 Maven 或 Gradle 这样的普通构建系统,您所有的 resources 都会与 classes.

一起打包到目标 jar 中

要实现您的要求,您只需在 resources 中创建与原始 AccountMessageDispatcher.

相同的目录树

实际上任何 Java 包都是最后 jar 中的一个目录。