- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个组件 MyComponent 需要访问 AConfiguration 和 BConfiguration:
my.MyComponent:
@Component(
configurationPid = "[my.AConfiguration,my.BConfiguration]"
)
public class MyComponent {
@Activate
@Modified
protected void activate(Map<String, Object> properties) {
_aConfiguration = ConfigurableUtil
.createConfigurable(AConfiguration.class, properties);
_bConfiguration = ConfigurableUtil
.createConfigurable(BConfiguration.class, properties);
}
public void hello() {
System.out.println("A:" + _sConfiguration.valueA());
System.out.println("B:" + _sConfiguration.valueB());
}
}
my.A配置:
@Meta.OCD(
id = "my.AConfiguration"
)
public interface AConfiguration {
@Meta.AD(deflt = "6")
public long valueA();
}
my.B配置:
@Meta.OCD(
id = "my.BConfiguration"
)
public interface BConfiguration {
@Meta.AD(deflt = "6")
public long valueB();
}
问题:使用 Liferay 的配置 UI 将 valueA 和 valueB 配置为 7
没有效果,MyComponent.hello()
仍然看到默认值6
。
我做错了什么?
让我的组件使用来自多个配置接口(interface)的配置信息的正确方法是什么?
用例:我的组件执行一些业务处理并将结果保存到远程服务器。有一个配置接口(interface)包含业务处理设置,还有一个配置接口(interface)包含远程服务器的URL。
最佳答案
@Component
注释上的 configurationPid
属性格式错误。应该是:
configurationPid = { "my.AConfiguration", "my.BConfiguration" }
这将创建一个包含两个条目的字符串数组值:my.AConfiguration
和 my.BConfiguration
。相反,您使用了:
configurationPid = "[my.AConfiguration,my.BConfiguration]"
...它创建一个单个字符串,其文字值为[my.AConfiguration,my.BConfiguration]
,这几乎肯定不是您想要的。
关于configuration - 同一组件中的多种配置(@Meta.OCD接口(interface)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47935742/
我正在尝试编译 XERCES 站点上提供的以下示例代码: #include // Other include files, declarations, and non-Xerces-C++ init
谁能帮助我理解 openocd 的“无效命令名称”错误?一些细节: openocd 0.7.0 windows 二进制文件 olimex arm-usb-ocd-h 适配器 基于 lpc3250 ph
我是一名优秀的程序员,十分优秀!