gpt4 book ai didi

spring-boot - 在 Spring Boot 嵌入式容器中部署第三方 war

转载 作者:行者123 更新时间:2023-12-02 03:34:22 25 4
gpt4 key购买 nike

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

我将服务打包到 spring boot (1.0) 容器中。该服务使用 activiti (www.activiti.org) 来管理一些业务流程。我正在尝试在同一个 spring boot 容器中部署,这是 activiti-explorer 的 war 。这场 war 有自己的 web.inf、spring 配置等,因此它可能与现有的 spring 配置冲突,但尽管如此,我还是想尝试按原样部署这场 war 。

我还没有找到任何方法来做到这一点,并且怀疑 spring boot 不支持将预打包 war 部署到嵌入式容器中,是吗?

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

谢谢


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

现在我想做一些与另一场 war 类似的事情,它包含一个完整的网络应用程序(它是一个 vaadin/spring 3.2 应用程序,有自己的库、jsps、静态资源......)并想将它映射到(比如)/ war 路径。

我想将 war 放在一个众所周知的位置,并使用(比如)WarRegistrationBean 将其部署到 tomcar 中,这将使 Tomcat 处理所有类加载障碍(正如我提到的,war 在我正在使用 spring 3.2 时使用 4.0 和 spring boot,...)。我怀疑 spring-boot 不支持最后一个功能,或者 - 可能 - 甚至超出项目本身的范围。

最佳答案

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

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

关于spring-boot - 在 Spring Boot 嵌入式容器中部署第三方 war ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24634166/

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