使用Web服务虚拟化Oracle数据库
2007-05-10 12:15:09 来源:WEB开发网proxyopts — 特定于 proxywsdl 的选项列表
dir — 所有生成文件的存储目录
Oracle 10g 第 2 版 JPublisher 还支持基本类型数组和 JavaBeans 等复杂类型。
让我们看一个例子。 下面的简短演示使用了 getQuote Web 服务(由 www.xmethods.net 免费提供)并提供延迟 20 分钟的股票报价;您可以使用类似的与动态数据相关的 Web 服务来运行该演示。
WSDL 位于 http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl 中。 单击“分析 WSDL”链接可以获得端点位置,Web 服务在该位置侦听传入的请求。 该端点位于 http://64.124.140.30:9090/soap 中;单击“操作”链接可以获得操作和方法名。
首先,确认 dbwsa.jar、JDBC 和 JPublisher/SQLJ 库($OH/sqlj/lib/translator.jar、$OH/sqlj/lib/runtime12.jar)位于 CLASSPATH 中。
然后,运行以下 JPublisher 命令生成 Web 服务客户端代理和 PL/SQL 包装程序,并将它们透明地加载到数据库的 JVM 中。 为使生成的代码能够在数据库中正常运行,请确保客户端 JDK 与 Java 运行时兼容。 (Oracle9i 第 2 版与 JDK-1.3.x 兼容,而 Oracle 数据库 10g 与 JDK 1.4.x 兼容;我在本示例中使用了 Oracle 10g 第 2 版 JPublisher。) 此外,请与您的 DBA 核对系统口令。
$ jpub -u scott/tiger -sysuser system/manager
-proxywsdl=http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl
-proxyopts=tabfun -httpproxy=www-proxy.us.oracle.com:80
-endpoint=http://64.124.140.30:9090/soap -dir=quotes
quotes/src/genproxy/NetXmethodsServicesStockquoteStockQuotePortClientJPub.java
quotes/plsql_wrapper.sql
quotes/plsql_dropper.sql
quotes/plsql_grant.sql
quotes/plsql_revoke.sql
Executing quotes/plsql_dropper.sql
Executing quotes/plsql_wrapper.sql
Executing quotes/plsql_grant.sql
Loading quotes/plsql_proxy.jar
SQL> select jpub_plsql_wrapper.getQuote('ORCL') as Quote from dual;
QUOTE
----------
12.6
您还可以计划批处理作业,该作业将定期调用特定的 Web 服务并存储结果。
更多精彩
赞助商链接