问题标签 [spring-java-config]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-security - 使用 Java Config 移除 ROLE_ 前缀升级到 Spring Security 3.2 有困难
我在使用 Java Config 围绕自定义RoleVoter
以删除ROLE_
前缀升级到 Spring Security 3.2 时遇到了一些困难。具体来说,我从原始 XML 中得到了这个:
我试图在我的@Configuration
对象中创建类似的配置
这是我现在遇到困难的地方,我最终在日志中遇到了一个异常,如下所示:
ROLE_
在这一点上,如果RoleVoter
配置正确,我不确定来自哪里。
java - 我应该将配置类注释为@Configuration 以进行测试吗?
我花了一些时间解决org.joda.time.DateTime->java.util.Date
Spring Data 中缺少转换器的问题(当 Joda-Time 在类路径上时,它应该默认启用)。我找到了一个原因,但是它在 Spring 中产生了一个关于@Configuration
注解的问题。
AbstractMongoConfiguration
使用来自 spring-data-mongodb 的标准应用程序配置:
显式使用 AppConfig 类的测试(使用 Spock,但使用 spring-test 提供的内部机制):
它工作正常。但是当 AppConfig 中的 @Configuration 注释被删除/注释时:
测试失败:
@Configuration
AFAIK当它在上下文中显式注册时(通过类中的类@ContextConfiguration
或register()
方法) ,不需要将其用于配置类AnnotationConfigWebApplicationContext
。无论如何都会处理这些类,并找到所有声明的 bean。@Configuration
当不同测试使用的测试上下文中的相同包中有 2 个相似的配置类时,不使用它来防止组件扫描检测有时很有用。
因此,我认为它可能是 Spring 中的一个错误,它会导致上下文中不同的内部 bean 处理取决于使用或不是@Configuration
注释。我比较了这两种情况的 Spring 日志,存在一些差异,但我无法确定它们是由 Spring 内部类引起的。在提交错误之前,我想问一下:
我的问题。是否有一个可以解释的原因为什么相同配置类的 Spring(显式指出@ContextConfiguration
)使用(或不使用)Joda-Time 转换器取决于@Configuration
注释的存在?
我还创建了一个快速启动项目来重现该问题。spring-data-mongodb 1.3.3,spring 4.0.0,joda-time 2.3。
java - 结合 2 Spring boot 应用
只需遵循 Spring Guides http://spring.io/guides#gs我采取gs-rest-service
和gs-accessing-data-jpa
. 现在我想将它们组合到一个应用程序中,这就是org.springframework.boot.SpringApplication
需要更多地了解新的地方。
在gs-rest-service
配置中看起来很棒,几乎不存在
gs-accessing-data-jpa
更像是基于 Spring XML JavaConfig 的应用程序。
如何将它们结合起来?
这是否意味着我SpringApplication.run
现在需要在更详细的层面上重新编写?
spring-security - Spring Security 3.2 基于代码的配置。表单登录+全局方法安全
我在我的项目中将 Spring 安全性从 3.1 升级到 3.2。由于 3.2 支持基于代码的配置,我决定将旧的基于 XML 的配置转换为 Java 代码。
我收到异常说"authenticationManager"
每次我尝试启动应用程序时都没有找到具有名称的bean。@EnableGlobalMethodSecurity
在将注释添加到配置类后开始出现此异常。
Spring框架版本:4.0.0.RELEASE
Spring 安全版本:3.2.0.RELEASE
旧的 Xml 配置如下所示:
新的 Java 配置类如下所示:
异常文本:
我已经看了两天了,但找不到解决这个问题的方法。
更新
根配置:
Web 应用初始化程序:
java - Spring Security Digest Auth 使用 JavaConfig 示例
您如何配置 Spring 4.0 和 Spring Security (3.2.0) 以专门使用 javaconfig(无 XML)进行摘要身份验证?我正在使用以下配置类,但是所有请求都被 HTTP 401 拒绝,并且“Nonce 应该已经产生了两个令牌,但是(...消息只是停在那里)”。
我正在尝试通过包含标头在客户端进行授权:
授权: Digest username="user", realm="myrealm", nonce="", uri="/service?param=98", response="fcd46faf42a583499d4e7f0371171ef2", opaque=""
如果我将此类恢复为基于 HttpBasic 的配置,我就能够访问预期的服务。是我的配置有问题还是我的请求有问题?上面的大部分代码都是从另一篇文章中借来的,但是我无法在这种情况下工作。所有这些都在 Spring Boot 0.5.0M7 中运行。
谢谢。
spring - 在多模块 Java-Config Spring MVC 应用程序中使用 @ComponentScan 的正确方法
我刚刚开始了一个新的春季项目,这次我想做“正确”的事情。在上一个项目中,由于多个@ComponentScan
注释,我遇到了某些类的多次注册问题。(即所有服务类都注册了两次)
基本上我使用以下布局:
WebAppInitializer
:
RootConfig
:
WebMvcConfig
:
DatabaseConfig
:
第一个基本问题是: 哪个类应该扫描哪些类/注释?
应该只WebMvcConfig
扫描@Controller
类吗?应该扫描哪一个@Service
for@Configuration
和 for @Component
?
第二个问题是: 还是我应该简单地使用包来缩小扫描路径?
例子:
然后将所有@Controller
课程置于rootpackage.mvc.*
?
第三个问题是: let scan for更常见吗?或者我应该放在类的方法中?RootConfig
DatabaseConfig
DatabaseConfig
getRootConfigClasses
WebAppInitializer
最后一个问题是: 在一个多模块项目中:你如何组织这些东西?
示例:如果我选择我在问题二中描述的方式,我可以说,应用程序的每个模块实际上都由几个不同的模块组成。比方说,我想创建一个X
包含一个@Service
类和几个@Controller
类的模块,我可以将它们放在不同的包中。像这样:
Maven Module X Service
Maven Module X Controller
如果您建议这种方式,那么:在哪里放置模型和存储库(用于访问数据库)?我应该为每个模块创建一个新模块吗?
提前致谢!
spring - 在基于 Spring Java 的配置中收集数据
我正在将 Spring XML 配置迁移到基于 Java 的配置。在此过程中,我遇到了一个集合类型数据的情况,不知道如何在基于 Java 的配置中处理它。例如,
如果我不想在 Java 配置中拥有这个地图数据,我需要做什么?
spring-security - 如何在基于 Spring Java 的配置中放置带有正则表达式的 URL
在 Spring Security XML 配置文件中,我有类似的东西
如果我将上述内容转换为基于 Java 的配置,如何处理正则表达式?
spring-security - Spring Boot 中的 Spring 安全配置
我正在将Spring 3项目转换为Spring 4 + Spring Boot。我不知道这样做是否正确。我将Spring Security XML配置转换为基于 Java 的配置,如下所示:
当我点击主页 URL 时,我得到Spring Security默认登录弹出面板。在我看来,上面的配置没有生效,但是Spring Boot中默认的Spring Security配置没有。如果是这样,如何覆盖默认值?
tomcat - Apache CXF + Spring Java 配置(无 XML)
尝试使用 Tomcat 7 Maven 插件和 CXF 2.7.8 部署 JAX-WS 端点。作为一个偏好问题,我不想为 Spring 或 CXF 进行任何 XML 配置。我看到一些博客、文章、帖子使用cxf-servlet.xml
和 CXFServlet,但没有一个完全使用 Java 配置。查看 CXFServlet 源代码,它会cxf-servlet.xml
在 servlet 上下文中的 key 下查找 或任何内容'config-location'
。我尝试以编程方式注册端点而不是 in cxf-servlet.xml
,但它不起作用;访问服务时收到 404。有任何想法吗?