gpt4 book ai didi

mule - 从 Mule FunctionalTestCase 获取安全的 spring 属性

转载 作者:行者123 更新时间:2023-12-04 19:47:58 26 4
gpt4 key购买 nike

我需要从 Mule FunctionalTestCase 访问 Spring 属性占位符属性。

我正在使用 secure-property-placeholder,它是 spring 属性占位符的包装器,因此无法在我的测试用例中手动加载属性。

有没有办法从 mule 上下文中获取它们?所以我可以获得解密后的值?

最佳答案

可以做到,但您必须创建并添加 properties accessor helper bean它使用 BeanFactory 来查找属性值。在此之后,您可以从 Mule 上下文中获取该 bean 并使用它来检索属性值。

PropertiesAccessor propertiesAccessor = muleContext.getRegistry().get("propertiesAccessor");
Assert.assertEquals("expectedvalue", propertiesAccessor.getProperty("key"));

如果您不想在生产代码中使用 PropertiesAccessor bean,您可以将它的定义放入一个单独的 XML 文件中。

<?xml version="1.0" encoding="UTF-8"?>
<spring:beans xmlns:context="http://www.springframework.org/schema/context"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-current.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
">
<context:annotation-config />
<spring:bean id="propertiesAccessor" class="PropertiesAccessor" />
</spring:beans>

然后将其与 FunctionalTestCase 中的主 mule-config xml 一起加载

@Override
protected String[] getConfigFiles() {
return new String[] {
"src/main/app/mule-config.xml",
"src/test/resources/propertiesAccessor.xml",
};
}

关于mule - 从 Mule FunctionalTestCase 获取安全的 spring 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21913213/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com