gpt4 book ai didi

java - 为同一 xml 命名空间中的多个模式设置 xjc 的 maven 构建?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:12:08 27 4
gpt4 key购买 nike

我正在做一个项目,我们有基于 Jersey/JaxB 的序列化系统来与 Web 服务对话。相关服务返回包装在 Atom 提要中的数据。

系统的一个较旧的部分编写了一个一次性的特定于他们的 Atom 服务 XSD,该 XSD 仅与他们的特定元素硬连接。我现在需要添加对新服务的支持,该服务做类似的事情(使用 Atom 作为“信封”),但使用截然不同的元素和内容模式。

我不想打扰现有代码,所以理想情况下我想做与之前项目相同的事情:为新服务正在使用的 Atom 部分定义我自己的模式。

我遇到了:

org.xml.sax.SAXParseException: 'feed' is already defined

我显然达到了 the XJC release notes 中描述的限制: 超过一个是不合法的 <jaxb:schemaBindings>每个命名空间。

有没有办法在我们的构建中进行设置,以便如果我有单独的 xjb 文件,我可以在两个不同的模式上独立运行 xjc 并将它们中的每一个生成代码到单独的包中?我该如何解决这个限制?

我们正在使用 maven jaxb 插件。

最佳答案

仅作记录,我们最终做的是分别从模式生成代码,并 checkin 生成的代码。由于 ATOM 模式没有改变,因此它相当安全。不过,不得不那样做很烦人。

关于java - 为同一 xml 命名空间中的多个模式设置 xjc 的 maven 构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12361202/

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