spring - Mule 注册表 [Mule 4] 中未定义元素“springService”
问题描述
我在 mule 4 中遇到 bean 问题。尝试调用 java 时出错:
Mule 注册表中未定义元素“springService”
运行时发生错误。
我已经创建了 configuration.xml 并声明了 spring config:
<spring:config name="springConfig" doc:name="springConfig" files="beans.xml" />
然后在 /src/main/resources 中创建 beans.xml:
<beans ...>
<context:component-scan base-package="com.services" />
</beans>
com.services 是一个外部服务,它有一个类:
@Service
public class SpringService {
...
}
EDIT1:我试图调用java方法的方式:
<java:invoke doc:name="Get data" doc:id="id" class="com.services.SpringService" method="#[getData(String)]" instance="springService">
<java:args><![CDATA[#[{name: vars.name}]]]></java:args>
</java:invoke>
堆栈跟踪:
消息:Mule 注册表中未定义元素“springService”
元素:test-flow/processors/2@test-service:test.xml:14(获取数据)
元素 DSL:<java:invoke doc:name="Get data" doc:id="id" class="com.services.SpringService" method="#[getData(String)]" instance="springService"> java: args#[{name: vars.name}]</java:args> </java:invoke> 错误类型:MULE:UNKNOWN
FlowStack:在 test-flow(test-flow/processors/2 @ test-service:test.xml:14 (Get Data)) 在 get:\getData(name):test-api-config(get:\getData(name) ):test-api-config/processors/0 @ test-service:test-api.xml:125 (获取数据)) 在 test-api-main(test-api-main/processors/0 @ test-service:test -api.xml:15)
解决方案
Java 模块的文档并没有说它可以调用 Spring bean 实例。示例总是提到使用模块的新操作来创建实例。至少如果可能的话,它没有记录如何。当前版本的 Java 模块可能不支持。
推荐阅读
- java - Spring Cache 中的 @Cacheable 将值存储在缓存之外的 redis 中。我如何将它放在redis的缓存中?
- java - 如何使用 UCanAccess 库在日期范围内进行过滤
- wpf - 如何忽略/覆盖父级的数据模板?
- vb.net - JSON 未反序列化为自定义类
- android - 我的 recyclerview 没有显示我的数组列表
- visual-studio-code - 如何在复制粘贴时覆盖 VS Code 中的文件(而不是将 *.1* 附加到文件名)?
- drools - 解释分数 KIE Workbench
- r - R 记分卡包 ID 列
- asp.net-core - 跟踪来自 ASP.NET Core 服务的每个响应代码
- c# - IText7 pdf2Data 它与c#核心兼容吗?