如何为提供的WSDL编辑Java类

时间:2018-12-20 13:06:10

标签: java oracle web-services soapui

我正在研究一个Java程序,以循环调用Oracle Webservice来创建一些数据。但是我被告知要使用与WSDL上提供的XML标签不同的XML标签。 到目前为止,我没有发现任何问题,因为我学会了“导入” WSDL URL并从中创建Java类。 但是现在,我遇到了一个我不知道如何解决的问题

到目前为止,我没有发现任何问题,因为我学会了“导入” WSDL URL并从中创建Java类。 但是现在,我遇到了一个问题,我不知道如何在Java类上创建这个新标签,或者甚至可以使用。

     <com:StandardReceiptFLEXVA>
           <!--Optional:-->
           <stan:CashReceiptId>?</stan:CashReceiptId>
           <!--Optional:-->
           <stan:__FLEX_Context>?</stan:__FLEX_Context>
           <!--Optional:-->
           <stan:__FLEX_Context_DisplayValue>? 
           </stan:__FLEX_Context_DisplayValue>
           <!--Optional:-->
           <stan:_FLEX_NumOfSegments>?</stan:_FLEX_NumOfSegments>
        </com:StandardReceiptFLEXVA>

这是当我提供WSDL URL时SOAPUI生成的标准代码。但是Oracle支持团队(我之前联系过)告诉我,我需要使用它:

<com:StandardReceiptFLEXVA xsi:type="stan:Fianzas" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

           <stan:__FLEX_Context>FEE</stan:__FLEX_Context>
       <stan:modalidad>Provisional</stan:modalidad>
       <stan:tipoFianza>CASH</stan:tipoFianza>
       <stan:actividadConApbc>Test</stan:actividadConApbc>
           <stan:numReferenciaMigracion>99</stan:numReferenciaMigracion>


        </com:StandardReceiptFLEXVA>  

这在SOAPUI上有效,但是当我进入Java类时,除了“标准”类之外没有其他设置/获取。.因此,我认为我应该编辑Java类并添加它们。但是我不知道如何在Java上指定xsi:type =“ stan:Fianzas”属性。我希望我能正确地解释自己,因为我不会说英语。 预先谢谢你。

1 个答案:

答案 0 :(得分:0)

由于您的新WSDL文件在SoapUI中可以正常工作,因此现在您可以(重新生成)新的更新后的WSDL文件中的Java客户端代码。

您可以按照以下链接中的说明在SoapUI本身中实现此目的。它基本上向您展示了如何使用Axis 1.X,Axis 2,CXF 2.X和.NET 2.0等不同的代码生成工具来生成客户端代码。

SOAP Code Generation

Generating Client JAVA code for WSDL using SOAP UI