问题标签 [annox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
parameters - 使用 annox 进行参数注释
我正在寻找一种使用“annox”来注释生成的类的方法。目标是为生成的类添加一个休眠注释,该类具有构造函数值。以下是所需结果的示例:
你看:我有一个给注解的构造函数参数。
我已经在相应的 xsd 中使用了 @Enumeration 的一部分:
当然,当我生成我的源时,会产生一个错误,因为没有参数,注释就不存在。抛出的错误是:
无法将值 [ ] 解析为目标类 [javax.persistence.EnumType]
我尝试了很多(例如包括 value-Tag),但我无法添加正确的行为来添加带有 EnumType.STRING 作为参数的 Enumerated-Annotation。
有人知道怎么做这个吗?
binding - 从命令提示符运行带有 annox 的 xjc
我试图从网站http://confluence.highsource.org/display/J2B/Annotate+Plugin#AnnotatePlugin-Activation运行一个示例。网页中提供的第一个架构,我将其保存为 c:\jaxb 文件夹下的 schema.xsd。然后,我从命令提示符运行命令“xjc -extension schema.xsd”,我得到了类似的错误。显然 xjc 似乎不理解这个网址http://annox.dev.java.net。我该如何解决这个问题?
java - 禁止对 JAXB 生成的类发出编译器警告
这可能是这个问题的重复(避免 xjc 生成的代码上的编译器警告),但由于我不太精通 XJC/JAXB 自定义绑定特性,我想我可能误解了上述问题。
我的问题似乎很简单——如何@SuppressWarnings("all")
向生成的 JAXB 类添加注释?我们的项目有 0 个警告策略,在 JAXB 生成步骤之后,我们最终得到了 350 多个警告,这只是可怕的噪音。
我希望 XJC 上有一个简单的标志,或者至少是一种提供此类信息的简单方法,但我找不到任何信息。
根据我在旅行中看到的情况,人们会做以下事情之一:
- @lexicore 的JAXB2 Annotate Plugin,根据示例,它似乎可以完成这项工作,但添加一个完整的框架和数百 kB 的代码只是为了向一堆类添加简单的注释?真的??,
- 自定义 JAXB 绑定(我可能弄错了,但这看起来很神秘,我不确定是否可以这样做),
- 将执行搜索和替换后 JAXB 生成的自定义 ANT 目标,
- Eclipse 4+ 似乎有一个选项可以过滤掉选定项目的警告,但由于各种历史/遗留原因,我们被困在 Eclipse 3.7.2 (Indigo) 上,
- 将执行注释插入的自定义 XJC 插件(如其中一位评论者所建议,请参见此处),
- 将所有生成的类放在一个 JAR 中,使 JAR 成为项目的依赖项,然后完全删除生成的代码。
以前,我们通过将与 XML 相关的代码放在一个单独的 Eclipse 项目中,然后禁用项目上的警告/错误来处理这个问题。现在,作为代码整合/重构的一部分,我们已经重新洗牌,不再拥有这种奢侈。
对于这样一个看似微不足道的问题,真的没有优雅的解决方案吗?非常感谢任何反馈/想法。
FWIW,我们的项目使用 Ant 作为构建系统。
web-services - 使用带有“cxf-codegen-plugin”的注释插件(Annox)的问题
我正在我的应用程序中开发 RESTFul 服务。我们正在使用“ cxf-codegen-plugin ”从模式中生成 JAXB 类。对于给定的要求,我需要向生成的 JAXB 类添加一些注释,并且我试图为此使用Annotate Plugin(Annox)但在使用它时遇到问题。我收到org.xml.sax.SAXParseException:使用“ http://annox.dev.java.net ”自定义需要“-Xannotate”开关来启用此插件。
这就是我在我的代码库中进行设置的方式: 1. WSDL 指的是一个 XSD,其中我有注释的定义。2. pom.xml 使用'cxf-codegen-plugin' 来生成jabx 类。3. RESTFul 服务需要对生成的类进行一些额外的注释,所以我尝试使用 Annox 来完成工作。
这是来自 XSD 的片段:
这就是我希望我生成的类的样子:
以下是 pom.xml 中的条目:
我还注意到,如果我在JsonTypeInfo部分下的 xsd 中提供了一些错误的值/配置,则构建失败并抱怨(例如缺少必填字段“use”等)——所以我假设 Annox 插件已启用并正在尝试做某事。但是当我使用上述配置时,构建失败并出现 SAXParseException:使用“ http://annox.dev.java.net ”自定义需要“-Xannotate”开关来启用此插件。
有人可以建议如何解决这个问题吗?
jaxb - 带有 annox 自定义的 JAXB 单独剧集失败:SAXParseException2
我有 2 个 Maven 模块。
- 第一个只包含一个 xsd 模式来生成基本 POJO 类。
- Second on 包含一个 xsd 模式,它使用目录文件导入第一个模式并生成新的 POJO 类。两代都有效。
现在,我使用 annox(Swagger 注释)向两个 xsd 文件添加注释。第一个模块编译成功,但第二个模块编译失败并出现异常:
第一个模块
'Commons.xsd' :
/li>'pom.xml' :
/li>
第二模块
“扩展名.xsd”:
/li>'pom.xml' :
/li>'目录.xml' !
/li>
我试图解决这个错误已经好几天了,但没有成功。
jaxb - 有没有办法在不使用 annox 的情况下添加 JAXB 自定义注释?
过去两天我一直在使用 annox 库苦苦挣扎,几乎在每一个谷歌结果上都遇到过,但无法让它发挥作用。我只是不断收到“不支持的绑定命名空间”“ http://annox.dev.java.net ”。也许您的意思是“ http://java.sun.com/xml/ns/jaxb/xjc ”错误。
我需要在 xsd 模式中创建的类中的属性之前添加注释,有谁知道是否有一种方法可以在不使用 annox 的情况下执行此操作?或者我该如何解决这个错误?
谢谢你。
java - JAXB SCD not working with annox
I am having difficulties getting JAXB binding files to work with annox and SCD element selection. The schema is a bare basic schema with a ComplexType named SongType. I tried the normal way doing something like below and everything works a treat, class is named Song and not SongType and also has the Deprecated annotation.
<jaxb:bindings node="/xsd:schema" schemaLocation="example.xsd">
<jaxb:bindings node="xsd:complexType[@name='SongType']">
<jaxb:class name="Song"/>
<annox:annotateClass>
<annox:annotate annox:class="java.lang.Deprecated"/>
</annox:annotateClass>
</jaxb:bindings>
</jaxb:bindings>
But when I try to the same with jaxb scd references, XJC just fails with a xerces exception complaining that it does not know about the annox element present. Can anyone offer a suggestion of what is wrong here?
<jaxb:bindings scd="x-schema::tns" xmlns:tns="http://www.fleurida.com/blueprint">
<jaxb:bindings scd="~tns:SongType">
<jaxb:class name="Song"/>
<annox:annotateClass>
<annox:annotate annox:class="java.lang.Deprecated"/>
</annox:annotateClass>
</jaxb:bindings>
</jaxb:bindings>
Error Trace:
A fully documented and runnable example on github
java - 使用绑定文件注释 JAX-WS SEI 类
我想为从 WSDL 生成的 Apache CXF Web 服务客户端的服务端点实现接口类添加 java 注释。
这是我正在使用的绑定文件,它应该利用来自http://confluence.highsource.org/display/J2B/Annotate+Plugin的 JAXB 注释插件:
没有错误,但只是没有创建注释。我可以确认选择了节点并使用了绑定,因为如果我更改annox:annotate
with:
界面已重命名并正确注释。
我不清楚 annox 是否可以在这种情况下使用,以及 jaxb 和 jaxws 绑定之间的关系是什么。
代码生成由 CFX 通过 Maven 处理:
谢谢。
java - 注释生成的 Web 服务客户端 Java 接口
在使用 Maven 生成 Apache CXF Web 服务客户端时,是否可以通过 JAX-WS 绑定文件在服务端点接口 (SEI) 类上添加自定义注释?
到目前为止,在我看来,像Annox这样的东西仅限于来自模式和 JAXB 绑定的数据类型。我尝试annox
为 WSDL 的元素设置 JAX-WS 绑定portType
,但它没有选择它。
谢谢你。
jaxb2 - 向 JAXB 生成的 package-info 添加注释
我一直在使用annox在我的 jaxb 生成的类上添加注释(通过绑定文件),但我找不到直接在包(package-info.java)上添加注释的方法。
我一直试图在我的 bindings.xml 中做这样的事情:
但 jaxb 抱怨说annox:annotate
预计不会在那里。
还有另一种方法吗?