2

I have Java project with different modules on it. The project have one core module where all the common configuration files kept. Each module has separate configuration files like .properties files, hibernate.cfg, web.xml etc. It is not necessary that every time all modules will be there on the final build.

My problem is that, suppose 3 modules such as A, B & C are present. Each has its on web.xml and it contains only the servlets and mapping necessary for that. I want to know how concatenate these web.xml while building. I know that from ant I can call a Java application. The position of tags is important in web.xml.

How it possible to concatenate these web.xml effectively? I tried xstream for this but it was a failure.

4

4 回答 4

1

如果您使用的是 Servlet 3.0 容器,那么只有您的核心模块将具有 aweb.xml而您的其他模块将各自提供自己的web-fragment.xml.

于 2013-02-19T09:41:10.593 回答
0

xmltask非常适合使用 ant 进行 xml 处理
在此处查看详细信息和示例:
xmltask:
xml 任务手册
xml 操作使用 xml 任务
有用的 xpath 链接:http:
//zvon.org/xxl/XPathTutorial/
http://www.w3schools.com/xpath/

于 2013-03-04T20:48:08.100 回答
0

您可以通过以下方式实现此目的:

  1. 为您的目的使用 xstream 编组;有关如何编组对象的信息,请参阅有关编组的问题Map。或者使用官方教程
  2. 通过手动转换使用 SAX 解析。
  3. 使用并合并每个 XML 将整个 XML 转换为 JSON JSON.org,然后从 JSON 重建 XML。注意:不要将xstream用于此目的,它会反转整个 XML,从而导致生成的 XML 的验证错误。
于 2013-02-19T09:32:46.733 回答
0

你的问题本身就有答案,写一个java小程序来解析所有你想组合的XML,得到需要的nodeList,按照你想要的顺序写入新的XML。在 Ant 构建期间调用这个 java 程序。

于 2013-02-19T07:55:43.017 回答