gpt4 book ai didi

java - 如何使用 ModuleConfiguration.java 配置 Spring XD 模块?

转载 作者:行者123 更新时间:2023-11-30 03:06:42 25 4
gpt4 key购买 nike

我创建了一个 Spring XD 模块,类似于示例推文转换器。 Spring 文档说您可以在 src/main/resources/config/ 下使用 spring-module.propertiesspring-module.xml 配置code> 或专用的 ModuleConfiguration.java 文件,它定义了 Bean。但是,如果我只使用后者,它将无法运行。 XD 提示它无法确定模块类型。

如果我添加 spring-modules.properties 和模块 xml,它就可以工作。我的 ModuleConfiguration.java 如下所示:

package mypackage;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.integration.channel.DirectChannel;
import org.springframework.integration.config.EnableIntegration;
import org.springframework.messaging.MessageChannel;

@Configuration
@EnableIntegration
public class ModuleConfiguration {
@Bean
MessageChannel input() {
return new DirectChannel();
}
@Bean
MessageChannel output() {
return new DirectChannel();
}

@Bean
MyTransformer transformer() {
return new MyTransformer();
}
}

我的pom.xml继承自spring模块pom:

<parent>
<groupId>org.springframework.xd</groupId>
<artifactId>spring-xd-module-parent</artifactId>
<version>1.3.0.RELEASE</version>
<relativePath/>
</parent>

变压器看起来像这样:

package mypackage;

import org.springframework.integration.annotation.MessageEndpoint;
import org.springframework.integration.annotation.Transformer;

@MessageEndpoint
public class MyTransformer
{

@Transformer( inputChannel = "input", outputChannel = "output" )
public String transform( String payload )
{
return "Test";
}
}

最佳答案

在您的src/main/resources/config/spring-modules.properties中添加以下内容。

base_packages=mypackage

这将使 Spring XD 引擎拾取 ModuleConfiguration,并依次加载您的自定义 Transformer MyTransformer

其他一切看起来都不错。

关于java - 如何使用 ModuleConfiguration.java 配置 Spring XD 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34588101/

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