【发布时间】:2013-06-03 09:18:18
【问题描述】:
我们有一个复杂的 maven 依赖层次结构,我们的各个 Web 模块由 父 Web 模块持有。父 web 模块依赖于一个 service 模块,它本身依赖于一个 dao 模块。
我希望我的用户通过网络进行身份验证。因此,我在 web 模块中放置了一个 spring 安全配置文件。
我遇到的问题是 jdbc-user-service 需要一个数据源,我不能只从我的 web.xml 中的 dao 模块导入 spring 配置文件:它不干净甚至不可行 因为我需要 web 模块直接依赖于 dao 模块...
最好的做法是什么?
我可以使用 maven 创建单独且独立的 spring 安全模块吗?我没有在网络上找到任何关于此线索的文档。
是否需要从身份验证提供者/管理器/用户服务配置中拆分出与 Web 相关的 Spring Security 配置?
任何线索或指针欢迎...
【问题讨论】:
-
通常如果你在 dao 模块中有 spring-datasource.xml 并且在 web 模块中有 security-context.xml 你可以毫无问题地导入 spring-datasource.xml ('
') 即使模块之间存在间接依赖 -
好点...但是,负责该应用程序的架构师已将所有模块中的所有弹簧配置文件命名为相同名称,即“spring-config.xml”因此您建议的解决方案将导入所有模块中的所有文件都不是我想要的......
-
也许您可以重命名它们并应用一些更合适的命名约定?我想当您有多个同名文件时,即使找到正确的文件进行一些更改也不是一件容易的事......
-
即使我可以重命名配置文件,它仍然会创建 web 层对 dao 层的直接依赖,这应该避免。相反,您(或其他人)是否对如何创建单独的弹簧安全模块或进行上述问题中提到的拆分有任何线索?
标签: maven spring-security multi-module