Spring BatchとSpring MVCを使用するアプリケーションがあります。私はSpring Batch Adminを別の戦争として展開することができ、自分のアプリケーションに使用する同じDBに対して使用することができます。ただし、自分のアプリケーションに統合したいと思うかもしれません。既存のアプリケーションにSpring Batch Adminを統合する
これを行う簡単な方法はありますか、それをフォークしてそこから行く必要がありますか?
Spring BatchとSpring MVCを使用するアプリケーションがあります。私はSpring Batch Adminを別の戦争として展開することができ、自分のアプリケーションに使用する同じDBに対して使用することができます。ただし、自分のアプリケーションに統合したいと思うかもしれません。既存のアプリケーションにSpring Batch Adminを統合する
これを行う簡単な方法はありますか、それをフォークしてそこから行く必要がありますか?
これは明らかにこの通りです。thread;
web.xml
で一括管理のためのDispatcherServletを定義します。
<servlet>
<servlet-name>Batch Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/org/springframework/batch/admin/web/resources/servlet-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Batch Servlet</servlet-name>
<url-pattern>/batch/*</url-pattern>
</servlet-mapping>
がルートAppContextをしてresourceServiceのオーバーライドを追加します。
<bean id="resourceService"
class="org.springframework.batch.admin.web.resources.DefaultResourceService">
<property name="servletPath" value="/batch" />
</bean>
春バッチ管理者で変更standard.ftl
URLを反映する-resources-1.2.0-RELEASE.jar:
<#assign url><@spring.url relativeUrl="${servletPath}/resources/styles/main.css"/></#assign>
あなたがSpring-batch-admin 1.2.1
を使用している場合は、standard.ftl
ファイルを変更する必要はありません。そして、org/springframework/batch/admin/web/resources
からservlet-config.xml
とwebapp-config.xml
のファイルを追加する必要があります。ここでは(再び繰り返される)手順は次のとおりです。
<servlet>
<servlet-name>Batch Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/org/springframework/batch/admin/web/resources/servlet-config.xml,classpath*:/org/springframework/batch/admin/web/resources/webapp-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
あなたapplicationContext
でresourceService
Beanを追加します。
<bean id="resourceService"
class="org.springframework.batch.admin.web.resources.DefaultResourceService">
<property name="servletPath" value="/batch" />
</bean>
この質問に対する答えとして、 'resourceService'定義は' META-INF \ spring \ batch \ override'になければなりません。 http://stackoverflow.com/questions/23880396/batch-admin-console-dispatcherservlet-using-internalresourceviewresolver-inste – Stewart
代わりに、このような春のバッチ管理XMLファイルを参照する:
<param-value>classpath*:/org/springframework/batch/admin/web/resources/servlet-config.xml</param-value>
あなたは独自のXMLファイルを参照することもできます
このような
含むsomethink:私はjarファイルとしてパッケージ化された自分のアプリケーションに春のバッチ管理者が埋め込まれている
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<import resource="classpath*:/META-INF/spring/batch/servlet/resources/*.xml" />
<import resource="classpath*:/META-INF/spring/batch/servlet/manager/*.xml" />
<import resource="classpath*:/META-INF/spring/batch/servlet/override/*.xml" />
<import resource="classpath*:/META-INF/spring/batch/bootstrap/**/*.xml" />
<import resource="classpath*:/META-INF/spring/batch/override/**/*.xml" />
<!-- Override de standard locatie van spring batch admin resources -->
<bean id="resourceService" class="org.springframework.batch.admin.web.resources.DefaultResourceService">
<property name="servletPath" value="/batch" />
</bean>
<bean id="parameterUnpackerFilter" class="org.springframework.batch.admin.web.filter.ParameterUnpackerFilter">
<property name="prefix" value="unpack_"/>
<property name="putEmptyParamsInPath" value="true"/>
</bean>
</beans>
。私はこのアプリがすでに存在していたので、J2SEを使用して実行し、Tomcatのようなサーブレットコンテナでは実行しなかったため、これを行いました。さらに、私は、バッチジョブのためのWebサーバー/サーブレットコンテナを配備する必要がないというアイデアはあまり気に入らなかった。 Spring Batch Adminアプリケーションは良いリファレンス実装であり、Spring DIを介してカスタムクラスを使用してほとんどすべてのインターフェイスを置き換えることができます。さらに、すべてのUIはテンプレート駆動型でした。 私は関連リソースを抽出し、アプリケーションが起動する埋め込みJettyサーバーを使用してコンソールを実行しました。実際には、これはアプリ内のサーブレットコンテナ内のサーブレットコンテナへの包含を反転しました。
スクリーンショットはここにある:https://github.com/regunathb/Trooper/wiki/Trooper-Batch-Web-Console
ソース、コンフィグ資源などはここにある:https://github.com/regunathb/Trooper/tree/master/batch-core(ウェブ関連のconfigsとリソースのための/ srcに/メイン/リソース/ WEB-INFフォルダを確認してください)
+1あなた答えはここにリンクされています:http://forum.springsource.org/showthread.php?116685-Spring-Batch-Admin-App-fails-to-create-configuration-bean – opyate
pom.xmlの詳細を投稿できますか? spring-batch-admin jarファイルの依存関係を宣言しますか? – emeraldjava