是否有任何使用純java配置(無xml)的spring xd的示例。 我創建了一個簡單的tasklet,jarre相同(whojob.jar)並將其放入lib文件夾。 xml配置如下。我把它放在一個名爲whojob的文件中,該文件位於modules/job文件夾中,並且與我的whojob.jar一起震動。 當我嘗試創建一個作業時: - (:> job create --name mywhojob --definition「whojob」)我得到錯誤: 引起:org.springframework.beans.factory.BeanCreationException:創建名稱爲bean的錯誤'org.springframework.integration.config.TransformerFactoryBean#0':無法創建類型爲[org.springframework.xd.dirt.plugins.job的內部bean'org.springframework.xd.dirt.plugins.job.JobLaunchRequestTransformer#0'。 JobLaunchRequestTransformer],同時設置bean屬性'targetObject';嵌套的異常是org.springframework.beans.factory.BeanCreationException:在類路徑資源[META-INF/spring-xd/plugins中定義的名稱'org.springframework.xd.dirt.plugins.job.JobLaunchRequestTransformer#0'中創建bean時出錯/job/job-module-beans.xml]:設置構造函數參數時無法解析對bean「jobFactoryBean」的引用;嵌套異常是org.springframework.beans.factory.BeanCreationException:創建名爲'jobFactoryBean'的Bean時出錯:FactoryBean在創建對象時拋出異常;嵌套的異常是java.lang.IllegalStateException:在註冊表中找不到提供的密鑰'mywhojob.job'的批處理作業。 我的xml配置如下。如果可能,我想要一個純java解決方案。 由於如何使用java配置在spring-xd中創建作業
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:int="http://www.springframework.org/schema/integration"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:batch="http://www.springframework.org/schema/batch"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration.xsd
http://www.springframework.org/schema/batch
http://www.springframework.org/schema/batch/spring-batch.xsd">
<batch:job id="whojob">
<batch:step id="whojobStep">
<batch:tasklet ref="whojobXDTasklet" />
</batch:step>
</batch:job>
<bean id="whojobXDTasklet"
class=" com.auction.data.batch.job.WhoTasklet" >
<property name= "who" ref="whoBean"/>
</bean>
<bean id="whoBean"
class="com.auction.data.batch.service.Who" >
</bean>
</beans>
截至目前,我不相信Spring XD中的XD支持java配置作業定義。但是,這不是你錯誤的原因。你使用的是什麼版本的XD?早期版本的Spring XD要求XML定義中作業的id是job,這不是你在這裏所擁有的。我會以此開始。 –
嗨邁克爾我正在使用XD版本1.0.0.M5。我對框架不太熟悉。我設法得到一個獨立的春天批處理項目工作(其中有所有Java配置)。然後我將java配置轉換爲它的xml版本。我有一個JobRepositoryFactoryBean的引用,然後將其轉換爲一個Spring xd模塊。 – user3304825
請參閱https://github.com/spring-projects/spring-xd/issues/1216獲取相關票券。 – btiernay