Java Maven cxf xjc插件xpath在绑定文件中未按预期工作

Java Maven cxf xjc插件xpath在绑定文件中未按预期工作,java,xpath,jaxb,Java,Xpath,Jaxb,好的,我们开始吧。我这里有一个简单的例子,为了简单起见只有几行,但它仍然不起作用。web浏览器中的XPath测试按预期查找元素 pom.xml中的插件: <plugin> <groupId>org.apache.cxf</groupId> <artifactId>cxf-xjc-plugin</artifactId> <version>3.3.1<

好的,我们开始吧。我这里有一个简单的例子,为了简单起见只有几行,但它仍然不起作用。web浏览器中的XPath测试按预期查找元素

pom.xml中的插件:

<plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>3.3.1</version>
            <executions>
                <execution>
                    <id>generate-sources</id>
                    <phase>generate-sources</phase>
                    <configuration>
                        <fork>true</fork>
                        <additionalJvmArgs>-Djdk.xml.maxOccurLimit=99999999</additionalJvmArgs>
                        <additionalJvmArgs>-verbose</additionalJvmArgs>
                        <sourceRoot>${basedir}/src/main/java</sourceRoot>
                        <xsdOptions>
                            <xsdOption>
                                <extension>true</extension>
                                <xsd>${basedir}/src/main/resources/xsds/CC015C.xsd</xsd>
                                <bindingFiles>
                                    <bindingFile>${basedir}/src/main/resources/xsds/CC015C_bindings.xjb</bindingFile>
                                </bindingFiles>
                                <packagename>generated.messages</packagename>
                            </xsdOption>
                        </xsdOptions>
                    </configuration>
                    <goals>
                        <goal>xsdtojava</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                    <extensions>
                        <extension>org.apache.cxf.xjcplugins:cxf-xjc-dv:3.3.1</extension>
                    </extensions>
            </configuration>
        </plugin>

org.apache.cxf
cxf xjc插件
3.3.1
生成源
生成源
真的
-Djdk.xml.maxOccurLimit=9999999
-冗长的
${basedir}/src/main/java
真的
${basedir}/src/main/resources/xsds/CC015C.xsd
${basedir}/src/main/resources/xsds/CC015C_bindings.xjb
生成的.messages
xsdtojava
org.apache.cxf.xjc插件:cxf-xjc-dv:3.3.1
CC015C.xsd内容:

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
    targetNamespace="http://example.eu"
    elementFormDefault="unqualified"
    attributeFormDefault="unqualified"
    version="51.40"
    vc:minVersion="1.1">
  <complexType name="CC015CType">
  </complexType>
</schema>

CC015C_bindings.xjb(CCType只是我拥有的一些类,应该由CC015CType扩展):


当我运行此操作时,会出现以下异常:

com.sun.istack.SAXParseException2; Failed to create model
    at com.sun.tools.xjc.ErrorReceiver.error(ErrorReceiver.java:64)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:226)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.run(XSDToJavaRunner.java:174)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.main(XSDToJavaRunner.java:360)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:224)
    ... 2 more
Caused by: java.lang.IllegalArgumentException: can't parse argument number: ''http://java.sun.com/xml/ns/jaxb''
    at java.text.MessageFormat.makeFormat(MessageFormat.java:1429)
    at java.text.MessageFormat.applyPattern(MessageFormat.java:479)
    at java.text.MessageFormat.<init>(MessageFormat.java:362)
    at java.text.MessageFormat.format(MessageFormat.java:840)
    at com.sun.tools.xjc.Messages.format(Messages.java:24)
    at com.sun.tools.xjc.ModelLoader.buildDOMForest(ModelLoader.java:278)
    at com.sun.tools.xjc.ModelLoader.loadXMLSchema(ModelLoader.java:318)
    at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:121)
    at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:76)
    ... 7 more
Caused by: java.lang.NumberFormatException: For input string: "''http://java.sun.com/xml/ns/jaxb''"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:569)
    at java.lang.Integer.parseInt(Integer.java:615)
    at java.text.MessageFormat.makeFormat(MessageFormat.java:1427)
    ... 15 more


[ERROR] C:\example\prototype\src\main\resources\xsds\CC015C.xsd [0:0]: Failed to create model
com.sun.istack.SAXParseException2;未能创建模型
位于com.sun.tools.xjc.ErrorReceiver.error(ErrorReceiver.java:64)
位于org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:226)
位于org.apache.cxf.maven_plugin.XSDToJavaRunner.run(XSDToJavaRunner.java:174)
位于org.apache.cxf.maven_plugin.XSDToJavaRunner.main(XSDToJavaRunner.java:360)
原因:java.lang.reflect.InvocationTargetException
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:224)
... 还有两个
原因:java.lang.IllegalArgumentException:无法分析参数编号:“”http://java.sun.com/xml/ns/jaxb''
位于java.text.MessageFormat.makeFormat(MessageFormat.java:1429)
位于java.text.MessageFormat.applyPattern(MessageFormat.java:479)
在java.text.MessageFormat.(MessageFormat.java:362)
在java.text.MessageFormat.format(MessageFormat.java:840)
位于com.sun.tools.xjc.Messages.format(Messages.java:24)
在com.sun.tools.xjc.ModelLoader.buildDOMForest上(ModelLoader.java:278)
在com.sun.tools.xjc.ModelLoader.loadXMLSchema(ModelLoader.java:318)上
在com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:121)上
在com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:76)上
... 还有7个
原因:java.lang.NumberFormatException:对于输入字符串:“”http://java.sun.com/xml/ns/jaxb''"
位于java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
在java.lang.Integer.parseInt(Integer.java:569)
在java.lang.Integer.parseInt(Integer.java:615)
位于java.text.MessageFormat.makeFormat(MessageFormat.java:1427)
... 还有15个
[错误]C:\example\prototype\src\main\resources\xsds\CC015C.xsd[0:0]:未能创建模型
com.sun.istack.SAXParseException2; Failed to create model
    at com.sun.tools.xjc.ErrorReceiver.error(ErrorReceiver.java:64)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:226)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.run(XSDToJavaRunner.java:174)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.main(XSDToJavaRunner.java:360)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.cxf.maven_plugin.XSDToJavaRunner.loadModel(XSDToJavaRunner.java:224)
    ... 2 more
Caused by: java.lang.IllegalArgumentException: can't parse argument number: ''http://java.sun.com/xml/ns/jaxb''
    at java.text.MessageFormat.makeFormat(MessageFormat.java:1429)
    at java.text.MessageFormat.applyPattern(MessageFormat.java:479)
    at java.text.MessageFormat.<init>(MessageFormat.java:362)
    at java.text.MessageFormat.format(MessageFormat.java:840)
    at com.sun.tools.xjc.Messages.format(Messages.java:24)
    at com.sun.tools.xjc.ModelLoader.buildDOMForest(ModelLoader.java:278)
    at com.sun.tools.xjc.ModelLoader.loadXMLSchema(ModelLoader.java:318)
    at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:121)
    at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:76)
    ... 7 more
Caused by: java.lang.NumberFormatException: For input string: "''http://java.sun.com/xml/ns/jaxb''"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:569)
    at java.lang.Integer.parseInt(Integer.java:615)
    at java.text.MessageFormat.makeFormat(MessageFormat.java:1427)
    ... 15 more


[ERROR] C:\example\prototype\src\main\resources\xsds\CC015C.xsd [0:0]: Failed to create model