[Java, Security] JSR 375: Java EE Security API

原文はこちら。
https://blogs.oracle.com/theaquarium/entry/jsr_375_java_ee_security

Java EEが長い間エンタープライズ・アプリケーションを安全に開発、実行のために使われてきました。明らかに、Java EEおよびそのコンテナはグローバルセキュリティ方程式の一部に過ぎません。Java EE層に注目すると、セキュリティ機能の一部が仕様に取り込まれていることがわかります。それに対し、他のセキュリティ機能はプロプライエタリで異なるJava EE実装に固有のものです。いくつかのセキュリティ機能は、外部アドオン(例えばサードパーティのライブラリ)でもあります。セキュリティは、自己完結するものではなく、異なるコンポーネント間の相互作用を要求することがよくあります(例えばJava EE Application ServerはLDAPサーバーと対話する必要があります)。オンプレミスでのデプロイからクラウドベースのデプロイに移行する際には、状況も変わります。最終的には、セキュリティに関しては移植性がシンプルになることはありません。

Java EEが意味のある存在でいるためには進化が必要です。 Java EE 8コミュニティサーベイからのフィードバックを見れば、明らかにセキュリティは改善されるべき領域です。
Final Results from our Java EE 8 Community Survey
http://glassfish.org/survey
そして、それこそがつい先頃レビューのためにJCPに提出されたJSR 375(Java EE Security API)のゴールです。
The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 375
https://jcp.org/en/jsr/detail?id=375
JSR 375は、Java EE8に含められる予定ですが、その最初のスコープは、コミュニティ・サーベイのフィードバック、Java EE仕様に対する課題やRFE(機能拡張依頼)、EG(Expert Group)メンバーによる長時間にわたるやりとり、コンファレンスでの非公式の議論などに基づきます。

このJSR 375では、達成目標の詳細を提供しています。手短に言うと、JSR 375のゴールは、様々な領域のプラットフォームにわたり、セキュリティAPIをシンプルにし、標準化、近代化することです。
  • User Management(ユーザー管理)「ユーザー・サービス」APIを標準化し、アプリケーションが(たとえばユーザーの作成などの)ユーザー管理操作を実現できるようにします。この「ユーザー・サービス」は、(LDAPやデータベースなどの)物理ユーザーストアを抽象化したユーザーソースを信頼します。ユーザーサービスはデプロイ要件に合うよう構成可能になる予定です。

  • Password Aliasing(パスワードエイリアス)(セキュアな)パスワード・リポジトリに保存されたパスワードに(別名)を指すための構文を標準化します。このパスワード・リポジトリは、その後アプリケーションにバンドルされることがあります(例えば、クラウドへのデプロイメントを考えてください)。
  • Role Mapping(ロール・マッピング)「ロール・サービス」APIを定義、標準化し、アプリケーションが(例えば、グループロールを照会するような)様々なロール・マッピング操作を実施できるようにします。これは、環境のニーズに基づいて適応可能な、異なるロールマッパー(例えばLDAPやファイル)を介して行われます。

  • Authorization(認可)CDIインターセプタ・アノテーションを定義し、メソッドレベルでアプリケーションドメインのルールを事前に決定するために使います。
  • Authentication(認証)認証まわりでいくつか機能強化が予定されています(Webアプリケーションが様々な認証方法を提供できるようにする、とか)
これは初期スコープの概要に過ぎません。また、Expert Groupは、これらの新しいAPIを簡単に利用するために、一部のJava EEの直交テクノロジ(Java EE orthogonal technology、例えばCDIイベントや式言語など)をどうやって活用できるか、を調べる必要もあります。このJSRのについてもっと知りたいという方は、JSR 375をお読みください。また、JavaOneでLinda Demichielが話したJava EE Overviewの動画をご覧いただくこともできます。セッションの中で、そうした考えに触れています。
JavaOne Replay: 'Java EE 8 Overview' by Linda DeMichiel
https://blogs.oracle.com/theaquarium/entry/javaone_replay_java_ee_8
JSR 375はJCPレビュー期間に入りました。その後の次のステップは承認投票期間になるはずです。
JCP 2: Process Document
2. INITIATE A NEW OR REVISED SPECIFICATION
2.2 JSR REVIEW
https://jcp.org/en/procedures/jcp2#2.2
そして、この投票を通過すれば、Expert Groupを形成し、実際の作業(ならびに議論)がスタートする予定です。そんなわけで、現在我々はちょうどこの取り組みの端緒にいますが、Java EE 8の様々な部分の準備を整えるさまを見ることができうれしいです。

[Linux, Virtualization] Oracle Linux Docker Base Image on Ubuntu 14.10

原文はこちら。
https://blogs.oracle.com/brunoborges/entry/oracle_linux_docker_base_image

Oracle Linuxチームががんばってくれたおかげで、Dockerのサポートが提供されるようになりました。8月からOracle Linux YUMリポジトリでDockerバイナリがリリースされていることを知って喜んでらっしゃることと思います。
Ahoy! Cast off with Docker on Oracle Linux
https://blogs.oracle.com/linux/entry/ahoy_cast_off_with_docker
そして先頃、Oracle Linux 6、7のOracle Linux Docker Base Imageがリリースされました。
Oracle Linux images for Docker released
https://blogs.oracle.com/linux/entry/oracle_linux_images_for_docker
Oracle Linux(OL6とOL7)およびDockerのドキュメントにも説明が入っています。
Oracle® Linux Administrator's Solutions Guide for Release 6
Chapter 10 Docker
https://docs.oracle.com/cd/E37670_01/E37355/html/ol_docker.html
Oracle® Linux Administrator's Guide for Release 7
Chapter 26 Docker
https://docs.oracle.com/cd/E52668_01/E54669/html/ol7-docker.html
DockerとOracle Linuxに関しては、以下のページからどうぞ。
Docker Images from Oracle
http://public-yum.oracle.com/docker-images/
では、なぜこれが重要なのか、とおたずねになるかもしれません。そうですね、ある時点でFusion Middleware製品チームが自身の製品、たとえばWebLogic ServerをDocker上でも動作保証をするよう進む場合、それは明らかに必要とされるステップだからです。
Docker, Java EE 7, and Maven with WebLogic 12.1.3
https://blogs.oracle.com/brunoborges/entry/docker_java_ee_7_and
それゆえ、まだ動作保証もサポートも対象外ではあるけれども、Oracle製品をDocker上で今すぐ使いたい場合、Oracle Linux Base Imageを使ってください。
開発者として、自身のラップトップでUbuntu Linuxを使いたいので、たとえばOL7 Docker Base Imageを使うにあたり、以下のすぐに終わる簡単な手順を実施しなければなりませんでした。
  1. Ubuntu環境にDockerがインストール済みであることを確認
    Ubuntu - Docker Documentation
    https://docs.docker.com/installation/ubuntulinux/
  2. OL7 Base Imageをダウンロード
    http://public-yum.oracle.com/docker-images/OracleLinux/OL7/
  3. まずxzを使ってファイルを展開する。Dockerがxzバイナリを見つけられないという問題が発生するかもしれません。
  4. $ sudo docker load -i oraclelinux-7.0.tar.xz
    2014/11/28 18:36:08 Error: Untar exit status 1 exec: "xz": executable file not found in $PATH
    
    $ unxz oraclelinux-7.0.tar.xz
  5. 展開終了後(tar ballのまま)、rootユーザーとして、ローカルDockerリポジトリにイメージを読み込む
  6. $ sudo docker load -i oraclelinux-7.0.tar
  7. インストールの確認
  8. $ sudo docker images
    REPOSITORY     TAG  IMAGE ID       CREATED      VIRTUAL SIZE
    oraclelinux    7.0  5f1be1559ccf   2 weeks ago    265.2 MB
  9. このイメージをベースにしたコンテナを作成し、実行
  10. $ sudo docker run -t -i oraclelinux:7.0 bash
これでできあがりです。DockerとOracle Linuxで遊んでください。そしてFusion Middleware製品で何か素敵なものを作成される場合には是非お知らせください。

[UI, UX] Back to Basics. Helping You Phrase that Alta UI versus UX Question

原文はこちら。
https://blogs.oracle.com/userassistance/entry/ui_versus_ux_back_to

UI(User Interface)とUX(User Experience)の違いについて質問をいただくことが多いのですが、その違いは以下の動画で確認いただけます。

是非ご覧になってください。UIのルック&フィール、スキニング、Oracle Applications CloudでシンプルになったUIのテーマを変更するための設定の利用や、Oracle Alta UIについて正しく質問を構成するために、その違いを理解することが特に重要です。
Simplified User Interface in Oracle Fusion Applications Fronts Oracle Cloud Offerings
http://www.oracle.com/webfolder/ux/applications/successStories/130724-FUSE.html
Oracle Alta UI - An all new modern design system
http://www.oracle.com/webfolder/ux/middleware/alta/index.html
Difference between UI and UX. UX is more than flat icons and a new CSS
UIとUXの違いは、大人気のワイヤーフレームに、視覚的なデザインを含めていない理由でもあります。

[Database] New Slide Decks Uploaded: Upgrade/Migrate/Consolidate to Oracle 12c and Parallel Multitenant Upgrade Internals

原文はこちら。
https://blogs.oracle.com/UPGRADE/entry/new_slide_decks_uploaded_br

いくつかのアップデートとスライドのアップロードをお知らせする時間です。今週あたまにマドリードでお会いした皆様にサイド感謝いたします。非常にすばらしい日で、楽しむことが出来ました。皆様がアップグレードや移行に成功することをお祈りしています。

さて、どこが新しくなったのか、と言いますと……。
  • "Oracle Database 12c "Upgrade, Migrate & Consilidate" という、非常にボリュームのあるスライドを新しくしました。なんと530枚。DB TECH SHOWCASE2014 TOKYOでのすばらしい講演でたくさんのヒントをくれたTom Kyteに感謝します。コンテンツを1日のワークショップに落とし込むのは今もって難しいのですが、後で数枚のスライドを追加しなくてはなりませんでした。
    いつものように、スライドの最後に変更ログがありますので、変更・追加した内容はそこを参照してください。
  • Oracle Multitenantのアップグレードの仕組みに関する、Joe ErredeによるOracle OpenWorldでの講演を拡張し新しくしました。パラレルアップグレードやオプション、catctl.plのチューニングに関する詳細がもれなく盛り込まれています。スライドのベースを作ってくれたJoeに感謝します。多くのスライドを再活用し、いくつかスライドを追加しました。ニュルンベルクでのDOAG Conferenceに参加いただいたすばらしい聴衆の皆様にも感謝しております。
  • ヒッチハイク・ガイドをアップデートしました。特にニュルンベルクでのDOAG Conferenceに参加されたたくさんの聴衆の皆様のために準備しました(本当に感動しました)

[Mobile, FMW] Oracle leaps ahead of SAP and IBM in MADP

原文はこちら。
https://blogs.oracle.com/mobile/entry/oracle_leaps_ahead_of_sap

先頃、Gigaom Researchがクロスプラットフォーム向けモバイル開発の状況を調査しました。調査対象のベンダーにはOracle、SAP、IBMなどの企業が含まれており、クロスプラットフォーム向けモバイル開発ソリューションを判断する基準を、以下の5個のDisruption Vectorsに分類しました。それぞれの基準と重み付けは以下の通りです。
  • Talent crunch (33%)
    専門のスキルセットを持つモバイル開発者の不足
  • Iteration Acceleration (22%)
    アプリケーション・リリースサイクルの加速
  • Fragmentation (20%)
    数多くのMADP(Mobile Application Development Platform:モバイルアプリケーション開発プラットフォーム)のコンポーネント
  • Trend Spotting (15%)
    ユーザやアプリケーションの傾向を早期に識別するための、responsiveな予測分析の必要性
  • Destabilization (10%)
    セキュリティ侵害の可能性の増加
Disruption Vectors
こうしたdisruption vector全体にわたって、Oracleは全体で最高得点を獲得し、talent crunchに関して明確なリーダーでもありました。これはOracleのMobile Application Framework(MAF)が、プラットフォーム固有のスキルが不要という点で最高だったことを意味しています。
以下は調査レポートでのMAFの評価を抜粋したものです。
  • “Oracle’s MAF emphasizes a multi-channel, pluggable approach rather than a monolithic stack.”
    (OracleのMAFはモノリシックなスタックではなくマルチチャネル、プラガブルアプローチを強調しています)
  • “MAF has well planned, mature, and use case-driven security features, mainly via the inclusion of the Oracle Mobile Security Suite (OMSS).”
    (MAFには、よく検討され、成熟したユースケース主導のセキュリティ機能を有しています。これらは主としてOracle Mobile Security Suite(OMSS)に含まれています)
  • “MAF is just the mobile piece of Oracle’s larger “SOA Suite” offering, which includes analytics, orchestration, service virtualization, and connectivity to cloud as well as on-prem.”(MAFはOracleの大きな「SOA Suite」のモバイル向けサブセットであり、分析、オーケストレーション、サービス仮想化、クラウドおよびオンプレミスとの接続性を備えています)
調査レポートの全文は以下のリンクからどうぞ。
Gigacom Research - Sector Roadmap: cross-platform mobile development
http://www.oracle.com/us/corporate/analystreports/gigaom-sector-roadmap-2355064.pdf

[SOA/BPM, FMW] Mac OS X上で動作するJDeveloper 12c (12.1.3)でSOA/BPM Suiteのヒューマンタスクを編集しようとすると例外が発生する

Macでも、JDeveloper 12.1.3を使い、Oracle SOA/BPM Suite 12cのコンポジットを開発できますが、ヒューマンタスクを編集しようとすると、NullPointerExceptionが発生するという問題がありました。
この不具合に関するサポート文書、ならびに修正パッチがMy Oracle Supportから提供されています。
Cannot Open BPM HumanTasks in JDeveloper on MAC O/S, 'NullPointerException' (ドキュメントID 1944727.1)
https://support.oracle.com/rs?type=doc&id=1944727.1
パッチ番号は19265102です。
近いうちに、JDeveloperのビルドが更新され、OTNからダウンロードしたJDeveloperでも問題なく編集できるようになるはずですが、当面はサポート契約いただいているお客様に対してのみ提供、ということになっておりますので、ご容赦ください。

[BPM] BPM Set Instance Title

原文はこちら。
https://blogs.oracle.com/ArdaEralp/entry/bpm_set_instance_title

Step 1: BPMアプリケーションを作成します。


Step 2: スクリプト・アクティビティを追加します(名前はこの例ではSetInstanceTitleとしてますが、何でもOKです)。



Step 3: XPath関数ora:setCompositeInstanceTitle()を使って、タイトルを設定します。



Step 4: Enterprise Manager Fusion Middleware Controlから確認しましょう。

[Linux] Oracle Linux images for Docker released

原文はこちら。
https://blogs.oracle.com/linux/entry/oracle_linux_images_for_docker

Oracle LinuxにおけるDockerのアップデートで、Oracle Linux 6およびOracle Linux 7の公式のDockerイメージをリリースしたことを発表でき、Oracle Linuxチームはうれしく思っております。このアップデートを使うと、お客様はOracle Linux上のDockerコンテナを作成、管理、展開するために必要なツールにアクセスすることができるようになります。
Oracle Linux Basicサポート・サブスクリプションおよびPremierサポート・サブスクリプションの一部でDocker Engineおよび公式Oracle Linuxイメージは完全にサポートされます。Oracle LinuxのDockerに対するサポートの範囲はMy Oracle SupportのDocument ID 1921163.1に記載されています。
Support for Docker Running on Oracle Linux (Doc ID 1921163.1)
https://support.oracle.com/rs?type=doc&id=1921163.1
Dockerは開発者やシステム管理者にとってアプリケーションをビルド、展開、実行、および配布するためのオープン・プラットフォームです。
Docker
https://www.docker.com
Docker Engineという、可搬性のある軽量な実行およびパッケージングツールであるDocker Engineと、アプリケーションの共有やワークフローの自動化のためのクラウドサービスであるDocker Hubから構成されています。Dockerを使うと、アプリケーションを素早くコンポーネントから組み上げることができ、開発、QA、本番環境間でおこる不具合を排除できます。結果として、ITがより速くアプリケーションを展開でき、同じアプリケーションを、ラップトップでも、データセンターのVMでも、クラウドでも変更せずに実行することができます。
Oracle LinuxでのDockerについて、以下のドキュメントで詳細を確認いただけます。
Oracle® Linux Administrator's Solutions Guide for Release 6
Docker
https://docs.oracle.com/cd/E37670_01/E37355/html/ol_docker.html
Oracle® Linux Administrator's Guide for Release 7
Docker
https://docs.oracle.com/cd/E52668_01/E54669/html/ol7-docker.html
Oracle Linux用Dockerは、Unbreakable Linux NetworkやOracleのPublic Yum ServerのOracle Linux 6およびOracle Linux 7のAdd-on Channelからインストールすることができます。
Unbreakable Linux Network
https://linux.oracle.com
Oracle Public Yum Server
http://public-yum.oracle.com
OracleのPublic Yum Serverで利用可能なDockerイメージをご覧頂けます。
Docker Images from Oracle
http://public-yum.oracle.com/docker-images/

Docker and Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. Docker, Inc. and other parties may also have trademark rights in other terms used herein.

[Database] Sleeping Beauties - Upgrade to 11.2.0.4 can be slow

原文はこちら。
https://blogs.oracle.com/UPGRADE/entry/sleeping_beauties_upgrade_to_11

USのお客様から先週LinkedInを通じて連絡があり、次の質問をいただきました。
"Is it expected that my patch set upgrade from Oracle 11.2.0.3 to Oracle 11.2.0.4 takes over 3 hours?"
(Oracle 11.2.0.3から11.2.0.4へのアップグレードのためのパッチセットって3時間以上かかるもの?)
当然ながら、Noです。そんなことはありません。
以下はutlu112s.sqlを使ってアップグレード後に収集したアップグレード統計情報です。
SQL> @?/rdbms/admin/utlu112s.sql ; .
Oracle Database 11.2 Post-Upgrade Status Tool 10-31-2014 10:05:29
Component Current Version Elapsed Time
Name Status Number HH:MM:SS
Oracle Server
. VALID 11.2.0.4.0 02:46:19
JServer JAVA Virtual Machine
. VALID 11.2.0.4.0 00:08:34
[..]
Final Actions
. 00:00:00
Total Upgrade Time: 03:06:47

いやいや、全くもって想定外です。ってわけで、問題のアップグレード・スクリプトc1102000.sql内の上記ステートメントを見つけ、根本的な原因を見極めることを試みました。
194 -- wri$_optstat_histhead_history2.
195 execute immediate
196 q'#create unique index i_wri$_optstat_hh_obj_icol_st on
197 wri$_optstat_histhead_history (obj#, intcol#, savtime, colname)
198 tablespace sysaux #';
199
200 execute immediate
201 q'#create index i_wri$_optstat_hh_st on
202 wri$_optstat_histhead_history (savtime)
203 tablespace sysaux #';
204 end;
205 /
この箇所は、ヒストグラム表の索引を再作成しています。既定の統計情報保持期間が31日なので、お客様の環境には非常に大量の統計情報があります。
索引の再構築が(並列実行せず、NOLOGGING句がないため)あまり効率的に行われていないのは明らかです。こうしたことが発生する可能性があり、この事象が何ら問題ないことも時としてあります。しかし、今回の場合、索引の再構築のためだけに2時間以上を要しました。
幸いにも、同僚のCindyが、こうした事象に対応するすばらしい人材です。私たちのチームへ問い合わせをもらった後、私はこの件でバグ番号を取り、コードの修正をすでにチェックイン(現在レビュー中)したことを返信しました。
bug19855835:
Upgrade from 11.2.0.2 to 11.2.0.4 is slow
追伸
この問題に目を向けさせてくれたTanの功績です。ご不便をおかけして申し訳ありません。

[Database, Support] Premier Support for Oracle 11.2 will end soon ... Upgrade to Oracle Database 12c now!

原文はこちら。
https://blogs.oracle.com/UPGRADE/entry/premier_support_for_oracle_11

ほとんどのお客様やパートナーの方々はすでにご存じですが、まだこの頃Oracle Database 10gR2から11gR2 (11.2.0.4) へのアップグレードに関するメールを受け取りました。まぁ、Premier Support終了まで3ヶ月を切ったリリースにリソースやお金を投入する理由があるかもしれないので、そういう人と議論するのはやめました。

ちょっと説明しておきましょう

  • Premier Supportが終了すると、Extended Supportをご契約いただかない限り、Oracleは新しく発見された問題に対する修正を提供しません。とはいえ、当該リリースの利用を止めるまでSustaining Supportを受けることはできます。Premier SupportExtended Support、そしてSustaining Supportの説明については、Lifetime Support Policyをご覧下さい。
    Lifetime Support Policy
    http://www.oracle.com/us/support/lifetime-support/index.html
  • Oracle Database 11.2.0.4
    Oracle Database 11.2のTerminal(最終) Patch Setであり、Oracleは対象となるサポート契約をお持ちの全てのお客様に対し、初年度のExtended Support開始を一時的に延期します(追加コストやアクションは不要です)。Oracle Database 11.2のPremier Support終了は2015年1月31日で変わりませんが、Oracle Database 11.2.0.4の初年度のExtended Supportを追加コスト無しで入手できます。Oracle Database 11.2.0.4のExtended Supportは2018年1月31日まで最大2年間延長することができますが、その場合は、通常通りの追加費用が必要です。
    この情報は、MOS Note742060.1に記載されています。
    Release Schedule of Current Database Releases (Doc ID 742060.1)
    https://support.oracle.com/rs?type=doc&id=742060.1
  • Oracle Database 11.2.0.3
    OracleはExtended Supportも一時的に延期していますが、Oracle Database 11.2.0.3のExtended Supportは2015年8月27日に終了します。そのため、その日以後、バグの修正(PSU、SPU、BPを含む)はご利用頂けません。 Oracle Database 11.2.0.3のExtended Supportの延長はできません。
  • Oracle Database 11.2.0.2およびOracle Database 11.2.0.1
    Extended Supportの提供はありません。
Oracle Database 12cへのアップグレード、移行、統合にご興味があれば、最新版のスライド(2014年10月31日改訂)をダウンロードセンターから入手してください。
Upgrade, Migrate & Consolidate to Oracle Database 12c
https://apex.oracle.com/pls/apex/f?p=202202:2:::::P2_SUCHWORT:migrate12c

[SOA, Mobile] Oracle Announces Oracle API Catalog to Simplify API Management

原文はこちら。
https://blogs.oracle.com/SOA/entry/oracle_announces_oracle_api_catalog

Oracleは新しい製品であるAPI Catalogを加え、自身のAPI管理ソリューションを拡張しました。このツールは、お客様はOracle SOA SuiteやAPIサービスやその他のソースの公開を簡単にするものです。Oracle API CatalogはOracleの幅広いAPI管理ソリューション・ポートフォリオの一部であり、またlOracle Mobile Suiteポートフォリオという、システムのモバイル化を進めるための製品群ともシームレスに統合します。Oracle API CatalogはOracle Fusion Middlewareのサービスを収集し、1クリックで公開したり、評価を投稿したり、種々のアプリケーションでの再利用を管理することができます。OracleのAPI CatalogはSOAPならびにREST/JSONに対応しており、モバイルアプリケーションのサポートも簡単です。

以下は、ベータカスタマであるLG&E and KU Services CompanyのIT Technical LeadであるPeter Osborneによる検証結果の抜粋です。
"The Oracle API Catalog is a straightforward, easy-to-use governance tool for capturing what services exist, what these services do, and how they can be consumed. Within hours of installation, an organization can begin cataloging their SOAP and REST web services, regardless of the underlying service technology. The harvesting functionality provides a jump start on aggregating service details, while minimizing manual data entry and the risk of duplication and error. Finally, the included JDeveloper plug-in completes the lifecycle by providing a mechanism within JDeveloper to easily view and consume documented services."
Oracle API Catalogは、どのようなサービスがあり、何をするもので、どのように利用されているかを収集するための、簡単で使いやすいガバナンス・ツールです。インストール中に、企業や組織はSOAP/REST Webサービスのカタログ化を進めることができます。実装しているサービステクノロジーの如何は問いません。収集機能(harvesting)により、手作業でのデータ登録が最小限ですむため、登録の重複、エラー登録も最小化でき、サービス詳細の集約を迅速に進めることができます。最後に、包含されているJDeveloperのプラグインにより、JDeveloper内で簡単にドキュメント化されたサービスの閲覧、利用できるので、開発のライフサイクルを完結できます。
Oracle API Catalogの詳細情報は、製品ページやデータシートをご覧下さい。
Oracle API Catalog
http://www.oracle.com/us/products/middleware/soa/api-catalog/overview/index.html
データシート
http://www.oracle.com/technetwork/middleware/id-mgmt/downloads/oracle-api-catalog-ds-2347229.pdf?ssSourceSiteId=ocomen