我是 OSGI 的新手。我们公司决定使用 Fuse ESB 作为我们的部署容器和蓝图作为 IOC。我面临的问题是我们在各种弹簧技术中有一堆弹簧应用程序,为简洁起见,让我们考虑弹簧批处理。我们已经习惯了 spring batch dsl 及其工作方式。有没有办法我可以使用相同的spring应用程序并通过蓝图加载它(Aries蓝图不是Gemini)并且还引用一个spring bean并通过蓝图导出它?这是一个公然的“不”,或者即使可能,考虑到一个 IoC 容器在另一个容器中是一种非常糟糕的做法,我们根本不应该尝试这样做?或者,如果有人尝试过,发现成功,如果可行,请提供一些指导。
问问题
792 次
1 回答
1
当您说spring batch dsl时,您的意思是spring xml命名空间。例如,它在 spring xml 文件中的 xml 标签?如果是这样,我认为 spring 批处理中的命名空间处理程序仅支持 Spring,因此您不能在蓝图 xml 文件中使用该命名空间 dsl。
为此,Spring Batch 项目还需要提供 Blueprint XML DSL。例如,这就是我们为 Apache Camel 所做的,为 Camel DSL 提供 Spring XML 和 Blueprint XML。
使用 Fuse ESB,您还可以使用 Spring XML。因此,您仍然可以使用 Spring XML(在 OSGi 容器的底层使用 spring-dm),而不是使用蓝图。因此,这将允许您使用 Spring Batch XML DSL。
于 2013-03-12T19:11:17.850 回答