Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CXF wsdl2java-生成不带包装器的列表(静态内部类)_Java_Web Services_Xsd_Cxf_Wsdl2java - Fatal编程技术网

CXF wsdl2java-生成不带包装器的列表(静态内部类)

CXF wsdl2java-生成不带包装器的列表(静态内部类),java,web-services,xsd,cxf,wsdl2java,Java,Web Services,Xsd,Cxf,Wsdl2java,我正在尝试创建一个ws,我对cxf生成的类有一个小问题 每当我尝试创建一个列表时,它都会作为静态内部类(包装器)的字段生成 比如说 <xs:complexType name="customer"> <xs:sequence> <xs:element name="customerId" type="xs:int"/> <xs:element name="orders"> <xs:c

我正在尝试创建一个ws,我对cxf生成的类有一个小问题

每当我尝试创建一个列表时,它都会作为静态内部类(包装器)的字段生成

比如说

<xs:complexType name="customer">
    <xs:sequence>
        <xs:element name="customerId" type="xs:int"/>
        <xs:element name="orders">
            <xs:complexType>
                <xs:sequence>
                    <xs:element name="order" type="tns:order" maxOccurs="unbounded"/>
                </xs:sequence>
            </xs:complexType>
        </xs:element>
    </xs:sequence>
</xs:complexType>

<xs:complexType name="order">
    <xs:sequence>
        <xs:element name="id" type="xs:long" />
        <xs:element name="name" type="xs:string" />
    </xs:sequence>
</xs:complexType>

会产生

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "customer", propOrder = {
"customerId",
"orders"
})
public class Customer {

    protected int customerId;
    @XmlElement(required = true)
    protected Customer.Orders orders;
...
    public static class Orders {

        @XmlElement(required = true)
        protected List<Order> order;
...
@xmlacessortype(xmlacesstype.FIELD)
@XmlType(name=“customer”,比例器={
“客户ID”,
“订单”
})
公共类客户{
受保护的int客户ID;
@XmlElement(必需=true)
受保护的客户订单;
...
公共静态类命令{
@XmlElement(必需=true)
受保护名单顺序;
...
我想得到的是

public class Customer {

    protected int customerId;
    protected List<Order> orders;
...
公共类客户{
受保护的int客户ID;
受保护名单命令;
...
此示例类型的xml应如下所示:

<customer>
    ...
    <orders>
        <order>
            <id></id>
            <name></name>
        </order>
        <order>
            <id></id>
            <name></name>
        </order>
        ...
    </orders>
</customer>

...
...
据我所知,@XmlRootElement可以在执行java2wsdl时使用,但是有什么方法可以从wsdl生成这种类型的类吗


当前调用customer.getOrders().getOrder()将返回一个订单列表,这有点违反直觉

因为同样的问题而挣扎(CXF wsdl2java)并使用解决了这个问题。

嗨,我面临着同样的问题。你找到答案了吗?没有jaxb xew插件有没有办法做到这一点?我面临一个无法使用第三方插件的限制。