0 0

调用webservice服务,入口参数比较复杂,不知道怎么调用10

用soapUI 打开接口,可以看到需要的入口参数。

<soapenv:Body>
      <get:InputParameters>
         <!--Optional:-->
         <get:P_RECORD_INPUT>
            <!--Optional:-->
            <get:SYSTEM_CODE>?</get:SYSTEM_CODE>
            <!--Optional:-->
            <get:ITEM_CATEGORY>?</get:ITEM_CATEGORY>
            <!--Optional:-->
            <get:MAX_UPDATE_DATE>?</get:MAX_UPDATE_DATE>
            <!--Optional:-->
            <get:LAST_MAX_ROWNUMBER>?</get:LAST_MAX_ROWNUMBER>
          </get:P_RECORD_INPUT>
      </get:InputParameters>
</soapenv:Body>

我在代码这样调用接口:

Service service = new Service();
   Call call = (Call) service.createCall();
   call.setTargetEndpointAddress(url);
   call.setOperationName(new QName(soapaction, "GET_CUX_SOA_COMMON_ITEM")); // 设置要调用哪个方法
   call.setUseSOAPAction(true);
   call.setSOAPActionURI(soapaction + "GET_CUX_SOA_COMMON_ITEM");
   
   String systemCode = "";
   String itemCategory = "";
   String maxUpdateDate = "";
   Long lastMaxRowNumber = new Long(0);

   String namespace = "http://xmlns.oracle.com/apps/cux/soaprovider/plsql/cux_soa_common_info_pkg_v1/get_cux_soa_common_item/";
   call.addParameter(new QName(namespace, "SYSTEM_CODE"),XMLType.XSD_STRING, ParameterMode.IN);// 系统代码
   call.addParameter(new QName(namespace, "ITEM_CATEGORY"),XMLType.XSD_STRING, ParameterMode.IN);// 物资类别
   call.addParameter(new QName(namespace, "MAX_UPDATE_DATE"),XMLType.XSD_STRING, ParameterMode.IN);// 时间戳
   call.addParameter(new QName(namespace, "LAST_MAX_ROWNUMBER"),XMLType.XSD_LONG, ParameterMode.IN);// 获取数据序列
   
   String str = (String) call.invoke(new Object[] {systemCode,itemCategory, maxUpdateDate, lastMaxRowNumber });// 调用方法并传递参数

 

 

后台报错:

Unmarshalling Error: unexpected element (uri:"http://xmlns.oracle.com/apps/cux/soaprovider/plsql/cux_soa_common_info_pkg_v1/get_cux_soa_common_item/", local:"SYSTEM_CODE"). Expected elements are <{http://xmlns.oracle.com/apps/cux/soaprovider/plsql/cux_soa_common_info_pkg_v1/get_cux_soa_common_item/}P_RECORD_INPUT>

 

意思是应该传递P_RECORD_INPUT节点,可是我不知道该节点怎么传。


问题补充:谁帮忙,多送50积分啊!
目前还没有答案

相关推荐

    Axis动态调用webService

    Axis 动态调用 Web 服务 Axis 动态调用 Web 服务是指通过 Axis 框架来调用远程的 Web 服务。Axis 是一个流行的 Java 基于 SOAP 的 Web 服务框架,它提供了一个灵活的方式来调用 Web 服务。下面将逐步讲解 Axis 动态...

    C#发送HttpPost请求来调用WebService的方法

    在C#编程中,发送HttpPost请求来调用WebService是一种常见的数据交互方式,特别是在需要与远程服务进行异步通信或者处理复杂数据时。本篇将详细解释如何使用C#实现这一功能,以调用名为"MyAction"的方法为例。 首先...

    初学调用webservice的demo,适合初学者入门,资源包括axis2的库文件,以及org.apache.mina等库文件

    【标题】中的“初学调用webservice的demo”指的是一个专门为初学者设计的示例项目,用于教授如何在Java环境中调用Web服务。Web服务通常是以SOAP(Simple Object Access Protocol)协议为基础,通过XML格式交换数据的...

    ASPNET WebService源代码

    在这个场景下,它可能包含了用于调用WebService的方法,如显示服务的URL或者提供一个表单来发送请求。开发者可以在此页面上添加必要的HTML、CSS和JavaScript,以便与WebService进行交互,展示服务的使用示例。 接...

    WebService源码(C#)

    4. **消费WebService**:在客户端,可以使用.NET的`System.Web.Services`命名空间下的`WebReference`或`ServiceReference`类来引用和调用WebService。例如,创建一个新的C#控制台应用,添加对WebService的引用,然后...

    Xml WebService完全实例解析

    ServiceGatherSite不直接处理数据,而是通过调用各个资源站点(WebSiteA和WebSiteB)的服务来获取和整合信息。每个资源站提供自己的服务,如SiteAService和SiteBService,它们独立实现各自的查询功能,并以XML格式...

    webservice入门demo

    Web服务(WebService)是一种基于互联网的、平台独立的交互方式,允许不同系统之间进行数据交换。在本示例“webservice入门demo”中,我们主要关注的是如何使用C#语言来开发一个简单的Web服务以及相应的客户端测试。...

    qt webService Client源码

    3. SOAP服务的接口定义文件(如soapInterface.h):这个文件可能定义了用于与SOAP服务交互的类,这些类封装了特定服务的方法调用。 4. 实现文件(如soapInterface.cpp):这里是接口定义的实现,包括如何构建SOAP...

    webserviceC#

    2. 定义服务接口:在项目中,创建一个.asmx文件,这将作为WebService的入口点。在这个文件中,你可以定义服务的方法,这些方法将在客户端调用。 3. 实现服务方法:在.asmx.cs文件中,实现服务接口定义的方法。这些...

    Web Service和LDAP相结合 分布式用户认证为单点登录护航.pdf

    4. 方便管理的原则:WebService技术的松散耦合特点使其非常适合分布式处理,没有复杂的消息传递、对象引用和垃圾回收机制,因此系统设计时应便于管理和维护。 ### 校园网中分布式用户认证与单点登录的需求分析 ...

    基于SOAP的分布式软件设计.pdf

    基于SOAP的分布式软件设计是一种将软件架构在不同地理位置分布的系统上,以实现服务的远程调用和资源共享的方法。SOAP(简单对象访问协议)是实现该架构的关键技术之一,它为分布式计算提供了一种基于HTTP和XML的...

    spring springMVC mybatis

    Spring以其依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)而闻名,它简化了复杂的应用程序管理,并提供了大量的功能模块,如数据访问、事务管理、远程调用等。...

    JBOSS_ESB_开发手册

    - **JMS-Provider**:这是用于定义基于Java消息服务(JMS)的接口入口,通过配置JMS Provider和监听器,能够实现对来自客户端的JMS请求的接收与处理。 示例配置: ```xml ``` - **FS-Provider**:...

    J2EE武功秘籍

    - **Overload**:同一个类中的方法,方法名相同但参数列表不同。 - **Rewrite**:通常指子类重写接口中的抽象方法。 **15. Java 集合关系** - **Collection**:包括List和Set。 - **Map**:键值对集合。 - **List*...

    征地拆迁与房屋安置管理系统的设计概述.docx

    - **WebService技术**:实现不同系统之间的数据交换和服务调用。 - **XML数据格式**:确保数据的一致性和兼容性。 - **工作流技术**:自动化业务流程,提高效率。 - **信息门户技术**:集成多种应用和服务,提供...

    Java框架面试题总结

    - **静态INCLUDE**:在编译时就已经确定,不支持参数传递。 --- #### Ajax篇 **1. ajax是什么** Ajax全称Asynchronous JavaScript and XML,是一种创建交互式网页应用的技术,能够在不重新加载整个页面的情况下...

    征地拆迁与房屋安置管理系统的设计说明.docx

    - WebService技术:实现不同系统之间的数据交换和服务调用。 - XML数据格式转换:标准化数据交换格式,增强兼容性。 - 工作流技术:支持业务流程自动化。 - 信息门户技术:集成多种服务和信息,提供统一入口。 ...

    scrapy1.6.pdf

    - 定义起始URL(start_urls):爬虫开始工作的入口URL。 - 实现解析函数(parse):定义如何解析响应并提取数据或生成新的请求。 - **示例代码:** ```python import scrapy class ExampleSpider(scrapy.Spider):...

Global site tag (gtag.js) - Google Analytics