Oracle stored procedure调用web service
create or replace FUNCTION TESTBCWEBSERVICE RETURN VARCHAR2 AS
l_service sys.UTL_DBWS.service;
l_call sys.UTL_DBWS.call;
l_result ANYDATA;
l_wsdl_url VARCHAR2(32767);
l_namespace VARCHAR2(32767);
l_service_qname sys.UTL_DBWS.qname;
l_port_qname sys.UTL_DBWS.qname;
l_operation_qname sys.UTL_DBWS.qname;
l_input_params sys.UTL_DBWS.anydata_list;
BEGIN
l_wsdl_url := 'http://192.168.88.126:8400/axis/BCWebService.jws?wsdl';
l_namespace := 'http://192.168.88.126:8400/axis/BCWebService.jws';
l_service_qname := sys.UTL_DBWS.to_qname(l_namespace, 'BCWebServiceService');
l_port_qname := sys.UTL_DBWS.to_qname(l_namespace, 'BCWebService');
l_operation_qname := sys.UTL_DBWS.to_qname(l_namespace, 'validateXML');
l_service := sys.UTL_DBWS.create_service (
wsdl_document_location => URIFACTORY.getURI(l_wsdl_url),
service_name => l_service_qname);
l_call := sys.UTL_DBWS.create_call (
service_handle => l_service,
port_name => l_port_qname,
operation_name => l_operation_qname);
l_input_params(0) := ANYDATA.ConvertVarchar2('55555');
l_input_params(1) := ANYDATA.ConvertVarchar2('11111111');
l_result := sys.UTL_DBWS.invoke (
call_handle => l_call,
input_params => l_input_params);
sys.UTL_DBWS.release_call (call_handle => l_call);
sys.UTL_DBWS.release_service (service_handle => l_service);
RETURN ANYDATA.AccessVarchar2(l_result);
END;
以下是wsdl:
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="http://192.168.88.126:8400/axis/BCWebService.jws" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://192.168.88.126:8400/axis/BCWebService.jws" xmlns:intf="http://192.168.88.126:8400/axis/BCWebService.jws" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!--
WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)
-->
<script></script>
- <schema targetNamespace="http://192.168.88.126:8400/axis/BCWebService.jws" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
- <complexType name="ArrayOf_xsd_string">
- <restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" />
</restriction>
</complexContent>
</complexType>
</schema>
</wsdl:types>
- <wsdl:message name="mainRequest">
<wsdl:part name="args" type="impl:ArrayOf_xsd_string" />
</wsdl:message>
- <wsdl:message name="validateXMLResponse">
<wsdl:part name="validateXMLReturn" type="xsd:string" />
</wsdl:message>
<wsdl:message name="mainResponse" />
- <wsdl:message name="validateXMLRequest">
<wsdl:part name="userID" type="xsd:string" />
<wsdl:part name="password" type="xsd:string" />
- <wsdl:portType name="BCWebService">
- <wsdl:operation name="main" parameterOrder="args">
<wsdl:input message="impl:mainRequest" name="mainRequest" />
<wsdl:output message="impl:mainResponse" name="mainResponse" />
</wsdl:operation>
- <wsdl:operation name="validateXML" parameterOrder="medicalGroup requestTicket userID password claimDate memberKey1 memberKey2 doctorCode">
<wsdl:input message="impl:validateXMLRequest" name="validateXMLRequest" />
<wsdl:output message="impl:validateXMLResponse" name="validateXMLResponse" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="BCWebServiceSoapBinding" type="impl:BCWebService">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="main">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="mainRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded" />
</wsdl:input>
- <wsdl:output name="mainResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://192.168.88.126:8400/axis/BCWebService.jws" use="encoded" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="validateXML">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="validateXMLRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded" />
</wsdl:input>
- <wsdl:output name="validateXMLResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://192.168.88.126:8400/axis/BCWebService.jws" use="encoded" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="BCWebServiceService">
- <wsdl:port binding="impl:BCWebServiceSoapBinding" name="BCWebService">
<wsdlsoap:address location="http://192.168.88.126:8400/axis/BCWebService.jws" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
注意其中蓝色字的对应
分享到:
相关推荐
在Oracle数据库环境中,WebService调用通常涉及到将外部Web服务接口集成到PL/SQL代码中,以便在数据库端执行远程操作。"Oracle WebService调用封装为PackageBody"这个标题表明我们将探讨如何创建一个PL/SQL包体...
本文将详细介绍 Oracle 调用 Webservice 的实现过程,包括 Webservice 的基本概念、 Java 编写简单的 WebService 实例、Oracle 服务器端配置、加载 JAR 包、测试调用 PHP Webservice 和 Java Webservice 等内容。...
Oracle WebService 实例详解 在 Oracle 应用开发中,Web Service 是一种常见的技术,它允许不同的系统通过标准的 XML 格式进行通信。本文将深入探讨如何在 Oracle 环境下创建和使用 Web Service 的一个实际示例,...
### Oracle调用WebService接口地址Demo解析 #### 一、引言 在企业级应用开发中,不同系统间的集成与通信尤为重要。Oracle数据库作为一款广泛使用的数据库管理系统,支持多种方式与其他系统进行交互,其中通过调用...
本篇文章将详细探讨如何使用C#通过WebService来连接Oracle 9i数据库,以实现无需在运行C#程序的计算机上安装Oracle客户端即可进行数据操作。 首先,理解WebService的基本概念至关重要。WebService是一种基于Web的、...
### Oracle存储过程中调用WebService的方法解析 在Oracle数据库中,通过存储过程调用WebService是一种常见的需求,尤其是在需要与外部系统进行交互的情况下。本文将详细解释如何实现这一功能,并且会结合给定的部分...
oracle调用webservice个人实验成功
本文将深入探讨如何使用Android结合Webservice(尤其是C#编写的Web服务)来从Oracle数据库中获取数据,并解决Android 4.0以上版本的多线程问题。 首先,`Android+Webservice Oracle`的标题表明我们将关注的重点是...
Oracle数据库是企业级的重要数据存储解决方案,而Web服务则提供了跨平台的数据交换能力。本文将深入探讨如何使用C#来调用Oracle存储过程,并将其结果封装成XML,以构建一个Web服务,用于医院系统的实际应用。 首先...
利用spring3 + cxf 开发的一个webservice验证用户是否存在 数据库oracle ,有建库脚本。下载后改一下datasource中oracle配置 jaxws:endpoint传参研究了好几天,备份一下。
标题中的“PB+Oracle調用WebService說明及PB10.5開發類似RESTClient的工具”揭示了几个关键的IT概念和技术,主要包括PowerBuilder(PB)、Oracle数据库、WebService调用以及一个基于PB10.5的RESTClient工具的开发。...
Oracle PL/SQL是一种在Oracle数据库中编写存储过程和函数的语言,它结合了SQL的数据库操作能力和PL/SQL的编程灵活性。在本示例中,我们将深入探讨如何利用UTL_HTTP包来调用Web Service,这是一个非常实用的功能,...
这个场景中提到的"oracle触发器加载java文件访问webservice"是一个高级技术集成,它结合了关系数据库管理和Web服务的交互。让我们详细探讨一下这个主题。 首先,Oracle触发器用于在数据库层面上实现业务逻辑。它们...
附件文档以QQ在线WEBSERVICE接口为例,使用ORACLE utl包以SOAP方式调用WEBSERVICE接口,希望对有类似需求的同仁们有所帮助。
using (OracleConnection connection = new OracleConnection(connectionString)) { connection.Open(); using (OracleCommand command = new OracleCommand(query, connection)) { using (OracleDataReader ...
附件文档以QQ在线WEBAPI接口为实例,使用Oracle自带的 UTL包以POST方式调用WEBAPI,结果正常可用。希望对想通过数据库的方式调用WEBAPI接口的同仁门有帮助。