如何合并两个web.xml文件?

3
我有一个Java项目,其中包含不同的模块。该项目有一个核心模块,用于存放所有通用的配置文件。每个模块都有单独的配置文件,例如 .properties 文件、hibernate.cfg 和 web.xml 等。并非每次构建时都会有所有模块。
我的问题是,假设A、B和C等3个模块存在,每个模块都有自己的 web.xml,其中只包含必要的servlets和映射。我想知道如何在构建时将这些 web.xml 连接起来。我知道可以从ant中调用Java应用程序。web.xml 中标记的位置很重要。
如何有效地连接这些web.xml呢?我尝试使用xstream,但它失败了。
4个回答

3

如果您使用的是Servlet 3.0容器,则只有核心模块才会有一个web.xml文件,而其他模块则需要各自提供自己的web-fragment.xml文件。


很遗憾,我的雇主现在不希望我迁移到Servlet 3。 - Dinoop paloli
有没有关于如何使用这个Edward的文档? - Gaurav

1
以下是实现此目的的方法:
  1. 使用xstream marshalling;请参阅有关Map marshalling的问题,了解如何marshalling对象。或者使用官方教程。
  2. 使用SAX Parsing,手动进行转换。
  3. 使用JSON.org将整个XML转换为JSON,并合并每个XML,然后从JSON重建XML。注意:不要使用xstream来实现此目的,因为它会颠倒整个XML,导致生成的XML无法验证。

0

你的问题本身就有答案,编写一个小的Java程序来解析所有你想要合并的XML,获取所需的节点列表,按照你想要的顺序编写新的XML。 在Ant构建期间调用这个Java程序。


你有示例代码或链接可以让我开始做吗? - Dinoop paloli

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接