在Spring Boot嵌入式容器中部署第三方战争

时间:2014-07-08 14:16:59

标签: spring-boot activiti

如果这感觉有点“坏死”,请原谅。我看了一下,发现只有一个类似的问题没有答案(Spring-Boot Embedded Wars)。

我将服务打包到spring boot(1.0)容器中。该服务使用activiti(www.activiti.org)来管理一些商业流程。我试图在同一个春季启动容器内部署,为activiti-explorer开战。这场战争有自己的web.inf,spring配置等等,所以它可能与现有的spring配置冲突,但是,我想尝试按原样部署那场战争。

我还没有找到任何办法,并且怀疑spring boot不支持将预包战争部署到嵌入式容器中,不是吗?

正如警告一样,我认为我无法将提取的战争放入spring-boot jar中,因为我觉得它需要一个功能齐全的Web容器。如果spring-boot不提供这个功能,没什么大不了的,我们将在自己的tomcat上部署那场战争,但如果可能的话,它会很方便。

由于


更新 为了更好地清楚,我有一个已经运行的Spring Application独立服务器,它有自己的嵌入式Tomcat。 在嵌入式Tomcat中,我插入了一些我开发的@Controllers。 然后我还能够使用ServletRegistrationBean(映射到/ servlet-path)映射第三方servlet。

现在我想做一些与包含一个完整的Web应用程序的战争类似的东西(它是一个带有自己的库,jsps,静态资源的vaadin / spring 3.2应用程序......)并希望将其映射到(比如)/ war-path。

我想把战争放在一个众所周知的位置并将其部署到tomcar中,并使用一个(比如说)WarRegistrationBean来让Tomcat处理所有的类加载障碍(正如我所提到的,战争是使用Spring 3.2而我是使用带弹簧启动的4.0,...)。 我怀疑spring-boot不支持最后一个功能,或者可能 - 甚至超出了项目本身的范围。

1 个答案:

答案 0 :(得分:1)

您可以通过添加引导插件所执行的操作(来自加载程序的类和一些META-INF信息)来手动增强war存档。最简单的方法是简单地增强“空”战争,然后将其与目标战争合并(通过将它们爆炸并重新震动)。您需要添加的唯一内容可能是主要类。

Boot工具中仍然存在差距。如果您认为需要填写,请提出问题和/或发送一些代码。