Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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
Mule中从wsdl生成的JAXbelents_Jaxb_Wsdl_Mule_Mule Studio - Fatal编程技术网

Mule中从wsdl生成的JAXbelents

Mule中从wsdl生成的JAXbelents,jaxb,wsdl,mule,mule-studio,Jaxb,Wsdl,Mule,Mule Studio,我们希望在Mule studio中使用wsdl。我们通过CXF组件生成Java类。模式中有很多元素如下所示: 在生成的Java类中,我们将它们作为JAXBElement来获取,这并不是很好,因为在DataMapper中很难使用这些类。我看到可以通过提供jaxb绑定来覆盖这种行为。然而,我们的wsdl现在是这样的: <wsdl:portType name="ILegacy"> <jaxws:bindings xmlns:xsd="http

我们希望在Mule studio中使用wsdl。我们通过CXF组件生成Java类。模式中有很多元素如下所示:
在生成的Java类中,我们将它们作为JAXBElement来获取,这并不是很好,因为在DataMapper中很难使用这些类。我看到可以通过提供jaxb绑定来覆盖这种行为。然而,我们的wsdl现在是这样的:

    <wsdl:portType name="ILegacy">
    <jaxws:bindings
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
            wsdlLocation="src\main\resources\Legacy.wsdl"
            xmlns="http://java.sun.com/xml/ns/jaxws"
            xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
            xmlns:jaxb="http://java.sun.com/xml/ns/jaxb">
        <enableWrapperStyle>false</enableWrapperStyle>
        <jaxb:globalBindings generateElementProperty="false"/> 
    </jaxws:bindings>

假的

然而,这并没有改变JAXBElements的生成。这段代码有问题吗?

您是在起诉wsdl2java还是xjc?还是别的什么

如果在绑定文件中使用CXF wsdl2java或xjc pass作为命令的参数:

绑定123.xjb:

 <jaxws:bindings
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
            wsdlLocation="src\main\resources\Legacy.wsdl"
            xmlns="http://java.sun.com/xml/ns/jaxws"
            xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
            xmlns:jaxb="http://java.sun.com/xml/ns/jaxb">
        <enableWrapperStyle>false</enableWrapperStyle>
        <jaxb:globalBindings generateElementProperty="false"/> 
    </jaxws:bindings>

嘿,瑞安!我在开始我的帖子时解释了我们是如何生成它们的:“我们有一个wsdl,我们想在Mule studio中使用。我们通过CXF组件生成Java类。”因此,我们通过Mule studio生成Java类,在Mule studio中,没有这样的选项可以使用-b和外部jaxws绑定文件运行。
xjc schema1.xsd schema2.xsd schema3.xsd -b bindings123.xjb