如何解决JBoss EAP 7:在 standalone.xml 之外禁用标签池
我正在将一个遗留应用程序从 Weblogic 迁移到 JBoss EAP 7。该应用程序包含自定义标签,这些标签在创建时没有考虑到标签池(例如,它们的内部状态没有在 doEndTag 中正确清理)。
根据 RedHat 文档 https://access.redhat.com/solutions/1186363,在 EAP 6 中有一个需要在 web.xml 中设置的参数:
<servlet>
...
<init-param>
<param-name>enablePooling</param-name>
<param-value>false</param-value>
</init-param>
...
</servlet>
不幸的是,在 EAP 7 中,这只能通过配置 undertow 子系统来实现。
<subsystem xmlns="urn:jboss:domain:undertow:4.0">
...
<servlet-container name="default">
<jsp-config tag-pooling="false"/>
<websockets/>
</servlet-container>
我的问题是我的应用程序需要在我无法修改或请求修改的 Docker 映像上运行,因为它旨在在可能与标签池完美配合的不同应用程序之间共享。因此,编辑 standalone.xml 或其他服务器范围的配置文件是不可行的。 我能做什么:
- 我提供了 war/ear 文件,因此我可以修改其中的任何内容(例如 web.xml、jboss-web.xml、java 代码等)。如果 EAP 6 解决方案适用于 EAP 7,那就完美了
- 我可以编辑系统属性
- 我可以编辑环境变量
考虑到这些限制,有没有办法禁用标签池?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。