Java 使用命名空间生成Jaxb cxf xjc插件

Java 使用命名空间生成Jaxb cxf xjc插件,java,xml,jaxb,maven-3,Java,Xml,Jaxb,Maven 3,我正在使用CFXJC插件创建一些类。在代码中,我可以创建对象,封送和解封都没有问题 现在,虽然我开始调用soap端点,但遇到了一个问题。从服务提供程序返回的对象没有名称空间,而封送和解封似乎需要它 构建是这样的: <build> <plugins> <plugin> <groupId>org.apache.cxf</groupId> <artifactId&g

我正在使用CFXJC插件创建一些类。在代码中,我可以创建对象,封送和解封都没有问题

现在,虽然我开始调用soap端点,但遇到了一个问题。从服务提供程序返回的对象没有名称空间,而封送和解封似乎需要它

构建是这样的:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>${cxf.xjc.plugin.version}</version>
            <executions>
                <execution>
                    <id>xjc</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xsdtojava</goal>
                    </goals>
                    <configuration>
                        <xsdOptions>
                            <xsdOption>
                                <xsdDir>${basedir}\src\main\resources\xsd\TotalView-06-2019</xsdDir>
                                <bindingFile>${basedir}\src\main\resources\bindings\work.xjb</bindingFile>
                                <packagename>${jax.package.name}</packagename>
                            </xsdOption>
                        </xsdOptions>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
其中不包括
elementFormDefault=javax.xml.bind.annotation.XmlNsForm.QUALIFIED
我认为这是停止使用名称空间所需要的,但这是我在java中第一次深入研究xml,可能是不正确的


有没有一种方法可以阻止Jaxb/cfx xjc插件使用名称空间,或者在调用服务时将其添加到xml中?

这不是一种解决方案,而是一种黑客行为。在提供的模式中,我能够将
elementFormDefault=“unqualified”
更改为
elementFormDefault=“qualified”
,并且现在封送时类不需要名称空间。我忍不住想一定有更好的办法

@javax.xml.bind.annotation.XmlSchema(namespace ="http://xml.place.com/XMLSchema")
package com.code.place.generated;