2012年10月30日

[Database] White Paper for SAP on Oracle Database Options

原文はこちら。
https://blogs.oracle.com/bhuang/entry/white_paper_for_sap_on

SAPアプリケーションにOracle Databaseを使うにあたって有用なホワイトペーパーの最新版が出ています。
SAP on Oracle Development Update
http://www.sdn.sap.com/irj/sdn/ora?rid=/library/uuid/f0411371-9eea-2e10-43bf-f04e3213d6b0&overridelayout=true
ASMを使う場合には以下の情報も参考にして下さい。

[ADF Mobile] ADF Mobile Application in the Apple AppStore

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

Oracle ADF Mobileを使って作成されたiPhone AppがApple AppStoreに登場していることを発表したく思います。このアプリケーションはiPhone向けのHudson Mobile Monitorアプリケーションで、Hudson Continuous Integrationサーバのビルドステータスを確認できるものです。デフォルトではOracleでホストしているHudson CIサーバのインスタンスの状況を確認するような設定になっています。

ADF Mobileの主要な目的の一つは、一般にADF Mobileを使って作成されたアプリケーションがApple iOS SDKの条項に準拠していることを保証することなので、アプリケーションが承認プロセスを通るようにフレームワークを設計しました。もちろん、承認プロセスの中で問題が発生する可能性があるものも残っていますが、今後の記事でベストプラクティスをご紹介する予定にしています。
Apple AppStore
https://itunes.apple.com/
Hudson Mobile Monitor
https://itunes.apple.com/us/app/oracle-hudson-mobile-monitor/id540164061

2012年10月29日

[JavaScript] Welcome To The Nashorn Blog

原文はこちら。
https://blogs.oracle.com/nashorn_ja/entry/welcome_to_the_nashorn_blog

先日JavaOneでもセッションがあり好評だったNashornに関するブログが始まりました。このブログエントリを、「中の人」が日本語にされて公開してらっしゃいます。
Welcome To The Nashorn Blog(英語)
https://blogs.oracle.com/nashorn/entry/welcome_to_the_nashorn_blog
新しいエントリが追加されると日本語にして下さると思いますので、英語版ともどもご贔屓に。詳しくは日本語版をどうぞ。

[Java] NUMA-aware constructs for java.util.concurrent

原文はこちら。
https://blogs.oracle.com/dave/entry/numa_aware_constructs_for_java

java.util.concurrentという、JSR-166"JUC"並行処理ライブラリの構成要素では、現在、NUMAを意識していません。その理由は、現在、NUMAを認識でき、利用できるトポロジディスカバリのインフラや土台を持っていないからです。しかし、いくつかの使い捨てのプロトタイプで、それがNUMA対応ライブラリのコードを記述できることを説明しています。今回はJUC Exchangerをたまたま利用しましたが、もう一つの興味深いアイデアとして、folk-join work-stealingを使って、近傍のスレッドと関連付けられているQueueから取り出せるようにする方法が考えられます。

[EM, SOA] Oracle Enterprise Manager Cloud Control 12c: Best Practices for Middleware Management

原文はこちら。
https://blogs.oracle.com/emeapartnerweblogic/entry/oracle_enterprise_manager_cloud_control

この自習コースを使うと、Oracle Enterprise Manager Cloud Control 12cを使ってWebLogic ServerやSOAアプリケーション、SOAインフラを管理する際のベストプラクティスを習得できます。このチュートリアルはインタラクティブな講義や動画、復習のセッション、オプションのデモで構成されています。

このコースではWebLogic Server Management Pack Enterprise EditionとSOA Management Pack Enterprise Editionを取り扱っています。

2012年10月27日

[Java] Removal of the JDBC-ODBC Bridge from Java SE 8 JDK

原文はこちら。
https://blogs.oracle.com/Lance/entry/removal_of_the_jdbc_odbc

Java SE 8登場の時点で、JDBC-ODBCブリッジはJDKに含まれない予定です。JDBC-ODBCブリッジは常に過渡的なものであってサポート対象外のものだと見なされていました。そのため、単にJDKにバンドルされているだけでJREに含められていなかったのです。JDBC-ODBCブリッジはJDBC 2.0の限定的なサポートを提供しているだけで、最新のJDBC仕様の最新版はサポートしていません。
JDBC-ODBC Bridge (Java SE Documentation)
http://docs.oracle.com/javase/7/docs/technotes/guides/jdbc/bridge.html
そのため、JDBC-ODBCブリッジを使わずに、貴社でお使いのデータベースベンダーが提供するJDBCドライバか、商用JDBCドライバのご利用をお勧めします。

2012年10月26日

[Solaris] Oracle Solaris 11.1

原文はこちら。
https://blogs.oracle.com/JeffV/entry/oracle_solaris_11_1

Oracle Solaris 11.1が先頃のOrale OpenWorldで発表されました。このリリースには性能や機能に関する新たな強化点が300も追加されています。
気に入っている新機能はこちら。
  • 共有ストレージ上にSolaris Zonesを作成できます
  • 32TB(!)ものRAMをサポートします
  • Oracle RACのロックレイテンシが改善されました
  • Oracle DatabaseのSGAを動的にサイズ変更可能になりました
  • 業界初のFedFS(Federated File System)のサポート
プレスリリースや11月7日に開催されるSolaris 11.1のLaunch Live Webcastで詳細を把握して下さい!

2012年10月25日

[Hardware] SPARC SuperCluster Papers

原文はこちら。
https://blogs.oracle.com/JeffV/entry/sparc_supercluster_papers

OracleがSPARC SuperCluster製品の利用や特性に関するホワイトペーパーを作成しました。以下にいくつかご紹介しましょう。
これらのホワイトペーパーが皆様のお役に立てばと思っています。

2012年10月24日

[Coherence] Using Coherence API to get POF bytes

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

Coherence APIを使ってPOF(Portable Object Format)のオブジェクトのバイト列をプログラムで取り出す方法を質問している人がいたので、こんなコードを思いつきました。非常にクールなAPIの簡単な利用方法がわかると思います。
Oracle® Coherence Java API Reference Release 3.7.1.0
http://docs.oracle.com/cd/E26853_01/coh.371/e22843/index.html
Portable Object Formatの使用
http://docs.oracle.com/cd/E26853_01/coh.371/b65026/api_pof.htm (日本語)
http://docs.oracle.com/cd/E24290_01/coh.371/e22837/api_pof.htm (英語)
SimplePofContext spc = new SimplePofContext();
spc.registerUserType(0, User.class, new UserSerializer()); 
// consider UserSerializer as an implementation of PofSerializer
         
User u = new User();
u.setId(21);
u.setName("Some Name");
u.setEmail("some.name@domain.com");
            
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutput dataOutput = new DataOutputStream(baos);
BufferOutput bufferOutput = new WrapperBufferOutput(dataOutput);
spc.serialize(bufferOutput, u);
            
byte[] byteArray = baos.toByteArray();
System.out.println(Arrays.toString(byteArray));
com.tangosol.io.pof
Interface PofSerializer
http://docs.oracle.com/cd/E26853_01/coh.371/e22843/com/tangosol/io/pof/PofSerializer.html

ね、簡単でしょ?

[Java] WebSocket Applications using Java: JSR 356 Early Draft Now Available (TOTD #183)

原文はこちら。
https://blogs.oracle.com/arungupta/entry/websocket_applications_using_java_jsr

WebSocketは一つのTCP接続で全二重、双方向の通信を提供するプロトコルです。JSR 356はJava EE 7プラットフォームでWebSocketアプリケーションを作るための標準APIを定義しています。
JSR 356: JavaTM API for WebSocket
http://jcp.org/en/jsr/detail?id=356
このTip Of The Day (TOTD)では、WebSocketの概要と、JSRがどのように進化してプログラミングモデルをサポートするようになっているかをお伝えします。

まず、WebSocketの入門編から。

WebSocketとは、IETF RFC 6455 Protocol と W3C JavaScript API (still a Candidate Recommendation)を組み合わせたものです。このプロトコルは定義します ハンドシェイクとデータ転送の開通を定義します。APIを使って、WebページがWebSocketプロトコルによりリモートホストと双方向の通信が可能です。
The WebSocket Protocol
http://tools.ietf.org/html/rfc6455
The WebSocket API
http://www.w3.org/TR/websockets/
HTTPとは異なり、新たなTCP接続を作成する必要はありません。クライアントとサーバ間の各メッセージ交換のためにぎっしり詰め込んだヘッダーを送信する必要もありません。WebSocketプロトコルはTCP上の基本的なメッセージフレームを定義しています。最初のハンドシェイクがHTTP Upgradeを使って成立すると、他から独立してクライアントとサーバはお互いにメッセージを送信できます。リクエスト/レスポンスやクライアント・サーバ間の一方向の事前定義されたメッセージ交換パターンはなく、これらを基本的なプロトコル上で明示的に定義する必要があります。
Upgrade Header
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.42
クライアントとサーバの間の通信はかなり対称的ですが、2つの違いがあります。
  • クライアントはWebSocketリクエストを待つサーバへの接続を開始する
  • クライアントはURIを使ってサーバに接続する。サーバは複数のクライアントからのリクエストを同じURIで待ち受けることができる。
この2個の違い以外は、ハンドシェイクを開通した後はクライアントとサーバは対称的な振る舞いをします。その意味で、「ピア」とみなされます。

ハンドシェイクに成功すると、クライアントとサーバはデータを「メッセージ」と呼ばれる概念的な単位で送受信します。メッセージは1個以上のフレームからなります。アプリケーションフレームにはアプリケーション用のペイロードが載っており、テキストデータもしくはバイナリデータの可能性があります。コントロールフレームにはプロトコルレベルの信号伝達のためのデータが載っています。

ではJSRについて説明しましょう。

Java Community ProcessでJSR 356としてJava API for WebSocketに取り組んでいます。ここではWebSocketアプリケーションを構築するための標準APIを定義します。このJSRは以下のようなサポートを提供します。
  • 双方向WebSocketの会話を処理するWebSocket Javaコンポーネントの作成
  • WebSocketイベントの開始、インターセプト
  • WebSocketのテキスト/バイナリメッセージの作成と利用
  • アプリケーションのためのWebSocketプロトコルとコンテンツモデルの定義機能
  • WebSocketセッションの構成および管理(タイムアウト、リトライ、クッキー、接続プーリングなど)
  • WebSocketアプリケーションがJava EEセキュリティモデル内で動作するための仕様
Tyrusは、JSR356の参照実装であり、すでにGlassFish 4.0 Promoted Buildに統合されています。
JSR 356: JavaTM API for WebSocket
http://www.jcp.org/en/jsr/detail?id=356
Java API for WebSocket
http://java.net/projects/websocket-spec/
Tyrus
http://tyrus.java.net/
GlassFish 4.0 (Promoted Build)
http://dlc.sun.com.edgesuite.net/glassfish/4.0/promoted/
では最後にコードをいくつか。

APIを使ってアノテーションやインターフェースを使いWebSocketエンドポイントを作成できます。このTOTDではアノテーションを使った簡単なサンプルをご紹介しましょう。将来のエントリでより進んだサンプルをご紹介する予定です。

@WebSocketEndpoint@WebSocketMessageを使ってPOJOをWebSocketエンドポイントに変換することができます。
@WebSocketEndpoint(path="/hello")
public class HelloBean {

    @WebSocketMessage
    public String sayHello(String name) {
        return "Hello " + name + "!";
    }
}
  • @WebSocketEndpointはこのクラスをpath属性で定義されたURIを待ち受けるWebSocketエンドポイントとしてマークします。
  • @WebSocketMessage はインバウンドのWebSocketメッセージを受信するメソッドを識別します。この最初のメソッドパラメータをインバウンドメッセージのペイロードに注入します。この場合、ペイロードはテキストベースを仮定しています。ペイロードがバイナリの場合、byte[] 型を取ることができます。@WebSocketEndpointdecoders属性を指定している場合、カスタムオブジェクトを指定できます。この属性はカスタムオブジェクトをデコードする方法を定義するクラスのリストを提供します。
  • このメソッドはオプションでSessionパラメータを取ることもできます。これはランタイムによって注入され、2個のエンドポイント間の会話をキャプチャします。
  • メソッドの返値の型は Stringbyte[]、その他カスタムオブジェクトの型を取ることができます。@WebSocketEndpoint のencoders属性はカスタムオブジェクトをエンコードする方法を定義するために必要です。
クライアント側は組み込みのJavaScriptを含むindex.jspです。JSPの本体は以下のようになっています。
コードは比較的単純です。HTMLフォームにはnameField.というテキストフィールドとボタンがあり、そのボタンから say_hello() メソッドを呼び出します。divプレースホルダは、出力表示に利用できます。

では、JavaScriptコードを見てみましょう。
<script language="javascript" type="text/javascript">
var wsUri = "ws://localhost:8080/HelloWebSocket/hello";
    var websocket = new WebSocket(wsUri);
    websocket.onopen = function(evt) { onOpen(evt) };
    websocket.onmessage = function(evt) { onMessage(evt) };
    websocket.onerror = function(evt) { onError(evt) };

    function init() {
        output = document.getElementById("output");
    }

    function say_hello() {
     websocket.send(nameField.value);
        writeToScreen("SENT: " + nameField.value);
    }
  • このアプリケーションは、GlassFish 4.0 promoted build 57に "HelloWebSocket.war"(ダウンロードはこちら)としてデプロイされるので、WebSocketのエンドポイントは、"ws://localhost:8080/HelloWebSocket/hello"で待ち受けています。接続するためにURIを指定して、新しいWebSocket接続を開始します。
  • JavaScript APIはコールバックメソッドを定義しています。このコールバックメソッドは、接続が開通 (onOpen)したり、閉塞 (onClose)したり、エラーを受信(onError)したり、エンドポイントからメッセージを受信 (onMessage)したりしたときに呼び出されます。
  • クライアントAPIにはデータ送信のための様々なsendメソッドがあります。このスクリプトは、say_hello メソッドで先ほどご紹介したHTMLのnameFieldの値を使い、テキストデータを送信します。
  • ボタンをクリックする都度、WebSocket接続を介してエンドポイントにテキストボックスの内容を送信し、上記 sayHello メソッドに基づいた応答を受信します。
テストはこんな感じでやってみましょう。
  1. こちらからソースもしくはWARファイルをダウンロードする  
  2. GlassFish4.0 build 57それ以後をダウンロードして展開する
  3. "asadmin start-domain"でGlassFishを起動する
  4. "asadmin deploy HelloWebSocket.war"でWARファイルをデプロイする
  5. http://localhost:8080/HelloWebSocket/index.jspからアプリケーションにアクセス
"Say Hello" ボタンを押すと、以下のような出力になるはずです。

以下は参考資料です。
今後のエントリで以下のトピックについて説明する予定です(順序は不定です)。
  • ペイロードにバイナリデータを載せる場合
  • エンコーダ/デコーダを使うカスタムペイロード
  • エラー処理
  • インターフェースドリブンのWebSocketエンドポイント
  • Java client API
  • クライアントとサーバの設定
  • セキュリティ
  • サブプロトコル
  • 拡張機能
  • APIからのその他のトピック
  • 流れているWebSocketメッセージをキャプチャする

2012年10月23日

[ADF] ADF Mobile Released!!

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

OracleのADF Mobile frameworkの最新版がご利用頂けるようになったことを発表でき嬉しく思います。この新しいフレームワークでは、最新のモバイルアプリケーションが必要とする待望のデバイス上の機能が利用できるようになっています。

機能ハイライト

  • Java - Oracleは各アプリケーションに組み込みJava VMが使えます。これにより、ご存知のお好きなプラットフォーム中立な言語で業務ロジックを開発できます(ええ、iOSでもです!)
  • JDBC - Javaが使えるということは、SQLiteドライバとエンジン、そしてJDBCも提供します。暗号化も標準でサポートしています。
  • Multi-Platform - 一度アプリケーションを開発すれば、複数のプラットフォームにデプロイできます、これホント。iOSやAndroidの電話、タブレットともサポートしています。
  • Flexible - UIの実装方法を決定できます。
    1. JSFのような既存のサーバベースのUIフレームワークの利用
    2. JQueryのようなお気に入りのHTML5フレームワークの利用
    3. フレームワークで提供されている宣言型HTML5コンポーネントセットの利用
    ADF Mobile XML、略してAMXでは、標準的な入力コントロールやレイアウトコントロールを全て提供しており、グラフや地図、ゲージも追加し、包括的なUIコントロールを提供しています。3つの方法を組み合わせたり、どれか選んで開発することができます。
  • Device Feature Access - デバイスの機能にJavaやJavaScriptからアクセスし、カメラやGPS、メール、SMS、アドレス帳などを呼び出せます。
  • Secure - ADF Mobileではバックエンドのサーバと共に動作する統合されたセキュリティを提供します。リモートURL、ローカルHTMLファイルやAMXをお使いの場合、単一の一貫したログインページを使って皆様が開発された機能の全て/一部をセキュアに保つことができます。SQLiteの暗号化機能を使えば、データの安全性も担保できます。
  • Rapid - ADF開発者が既に慣れている同じ開発テクニックを使うので、素早くモバイルアプリケーションを作成することができます。別の言語を学ぶ必要はありません。

Architecture

ADF Mobileは、アプリケーションコンテンツを表示するために使われている数多くのブラウザウインドウをホストする、各プラットフォームにネイティブに構築された「コンテナ」を採用する、「ハイブリッド」アーキテクチャです。業務ロジック用のコンテナにネイティブに構築されたライブラリとして、Java VMを追加しています。
Architecture Diagram

How To Get Started

ADF Mobileは最近リリースされたJDeveloper 11.1.2.3.0の拡張として提供されています。OTNから最新のJDeveloperをダウンロードし、[Check for Updates]機能を使い、ADF Mobileを入手して下さい。
Release Downloads for Oracle JDeveloper 11g (11.1.2.3.0)
http://www.oracle.com/technetwork/developer-tools/jdev/downloads/index.html

注意

ADF Mobileでは開発者が多言語やフレームワークを学習する必要がありませんが、iOS用のアプリケーションを開発、デプロイする場合、Apple Machintosh™での開発とXcodeをインストールする必要があります。Android™上のアプリケーションを開発、デプロイする場合には、Android SDKを開発環境にインストールしておく必要があります。

[SOA, Support] SOA PS5 Bundle Patch 4 and OSB PS5 Bundle Patch 1

原文はこちら。
https://blogs.oracle.com/soaproactive/entry/soa_ps5_bundle_patch_4

Announcing the Availability of SOA Suite 11g PS5 Bundled Patch 4 and OSB PS5 Bundle Patch 1
これらのBundled Patchには、PS5の修正が数多く含まれていますので、現在このリリースをお使いの方は是非パッチを適用下さい。Readmeでこのパッチに含まれている修正のリストをチェックし、このパッチに含まれていないSOA/OSBのパッチを適用されている場合には、適切なBundled Patchに適用できるOne-offパッチの作成を弊社サポートチームに依頼して下さい。

このパッチはMy Oracle Support(MOS)からダウンロードできます。[パッチと更新版]で、SOA Suiteの場合は'14406487'を、OSBの場合は'14389126'を入れて検索して下さい。

これらのパッチに含まれている修正の情報はMOSの次の文書からもご覧頂けます。
SOA 11g: Bundle Patch Reference, Doc ID 1485949.1
https://support.oracle.com/epmos/faces/DocContentDisplay?id=1485949.1
OSB 11g: Bundle Patch Reference, Doc ID 1499170.1
https://support.oracle.com/epmos/faces/DocContentDisplay?id=1499170.1

2012年10月18日

[WLS] WebLogic Server 11gR1 Interactive Quick Reference

原文はこちら。
https://blogs.oracle.com/emeapartnerweblogic/entry/weblogic_server_11gr1_interactive_quick

WebLogic Server 11gR1 Administration interactive quick referenceはWebLogic Serverアーキテクチャで使われている用語やコンセプトを知るためのマルチメディアツールです。このツールは管理者向けの内容で、オンラインでもオフラインでも利用できます。このツールはWebLogic Serverのアーキテクチャコンポーネントの説明と、関連する文書への参照を提供するマルチメディアWebページとして構築されており、直感的で便利な方法で、複雑なコンセプトや製品の有用な参考情報を入手できます。
Oracle WebLogic Server 11g: INTERACTIVE QUICK REFERENCE
http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/wls/Poster/poster.html
対話型のページでは(Oracle製品の場合)ドキュメントで入手できる情報が提示されていますが、実際の使い方に従った情報、つまりベストプラクティスのシナリオを提示しているため、より直感的で、オラクル製品のユーザーにとって有用な方法でご覧頂けます。例えば、アーキテクチャ図では、単一のスライドや紙よりも大きいアーキテクチャ図のイメージを提供しています。イメージはスクロールでき、ズーム機能もあるので、簡単かつはっきりとイメージの任意の場所を見ることができます。イメージ自体に、ホットスポットが含まれていて、クリックすると各機能の詳細情報を入手できます(参照情報へのリンクを含む)。コンポーネントの視覚的イメージと製品アーキテクチャ全体における位置づけ、または使用しているテクノロジーを、そのコンポーネントに関連する技術的な説明やマニュアルに紐付けることは、ドキュメントでは提供されていないものです。将来のリリースでは、ポスターを使ってネストした図の中の個々のサブシステムにさらにドリルダウンし、サブシステムの詳細を確認することが可能にする予定です。
要するに、このインタラクティブなポスターは全体像を見る上でよいものです。迅速かつ簡単に必要な情報の詳細を入手できます。テクニカルコンポーネントが全体アーキテクチャのどこに当てはまるのか、瞬時に核心に迫ることができます。
注意:これは初期リリースのため、多くの機能は現在開発中です。

現在わかっていること

  • FireFox 8.0以上でこのツールが動作します。ChromeやSafariでも動作するはずですが、現時点ではInternet Explorerでは問題が発生しています。
  • スマートフォン(iPad、iPhoneなど)は一部サポートされています。

[Identity Management, Security] Oracle on Oracle: How Oracle IT uses Oracle IDM

原文はこちら。
https://blogs.oracle.com/OracleIDM/entry/oracle_on_oracle_how_oracle

時として、最も厳しいお客様というのは自社の社員だったりします。Chirag AndaniはProduct Development Security IT Groupを運営しています。つまり、彼のグループはOracle内で社内のIdentity ManagementとSecurityに責任を負う部門なのです。

大規模なグローバル企業の多くと同様に、Oracleは複雑で動的なITインフラストラクチャを持っており、そのインフラストラクチャは同社の成長や企業の買収にあわせて変化し続けます。

Chiragを捕まえて彼の部門が直面している問題と、Oracle IDM、特に11gR2について思っていることを質問してみました。そのインタビューをPodcastにしていますので、是非お聴き下さい。

2012年10月16日

[Support] My Oracle Support 6.3 - Knowledge Highlights

原文はこちら。
https://blogs.oracle.com/supportportal/entry/my_oracle_support_6_3

My Oracle Support 6.3が先週の土曜日(2012年10月13日)にリリースされました。このリリースには30以上の機能強化と60以上のバグ修正を含んでいます。
最も大きな変更点は以下の通りです。
  • Search Suggestions(検索の提示)で綴りの間違いを自動修正します。'how-to'型の質問に対してより多く提示したり、提示された追加の言葉が確認しやすくなりました。
  • My Oracle Supportダッシュボードのナレッジベースの領域が使いやすくなりました。この領域から「最近の検索」条件で検索すると、検索属性(例えば事前に選択していた製品やリリース)を保持します。
  • 検索のコツ: ナレッジベースの領域がMy Oracle Supportダッシュボードの右側列の最初に現れない場合、一番上に現れるようにダッシュボードのパーソナライズを検討して下さい。問題を調査している製品を指定する(必要に応じてバージョンやタスクを指定)と、大半の場合より一層正確な検索結果が得られます。詳細は以前のエントリをご覧下さい。
    MOS 6.2 (KM) Release
    https://blogs.oracle.com/supportportal/entry/mos_6_2_release
  • ORA-600 や ORA-700の検索でのサポート
    'ORA-600 [Arg1]'と'Ora-00600: Internal Error Code, Arguments: [Arg1]'で検索結果が異なることはなくなりました。

[Support] Mobile My Oracle Support 6.3 Release is live!

原文はこちら。
https://blogs.oracle.com/supportportal/entry/mobile_my_oracle_support_6

先週土曜日(2012年10月13日)、Mobile My Oracle Support 6.3をリリースしました。このリリースには10の機能強化と約40のバグ修正を含んでいます。
Mobile My Oracle SupportはMy Oracle SupportのWebアプリケーションをモバイルデバイスに最適化したもので、サービスリクエスト(SR)や変更要求(RFC)、サポートのナレッジベースやBugデータベース、Sun System Handbookの検索、未解決のユーザーリクエスト(CUA)の管理を実現します。アプリケーションは http://support.oracle.mobi から直接アクセスするか、モバイルデバイスで http://support.oracle.com にアクセスするとリダイレクトされます。
概要
  • 種々の画面でUIを最適化しました。
サービスリクエスト
  • プラチナSRにプラチナアイコンを表示しています。プラチナの重大度1について状態を戻すことができます。
  • 共有機能を使って送信するメールにモバイルMOSとフルサイズのMOSのリンクが含まれるようになりました。
ナレッジマネージメント
  • 詳細検索でSun System Handbook(下図のスクリーンショット参照)を検索できるようになりました。
  • ナレッジベースドキュメントの表示が改善され水平方向のスクロールをしなくてよくなりました。
フィードバックやコメントをどしどしお寄せ下さい。もちろんリクエストもどうぞ。

2012年10月15日

[WLS] WebLogic Application Server: free for developers!

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

大ニュースです!Oracle WebLogic Serverが開発者向けに無料になりました。「何を言っているんだ?」ですって?つまり、開発者に対して、以下のことが許諾されたのです。
"[...]deploy the programs only on your single developer desktop computer (of any type, including physical, virtual or remote virtual), to be used and accessed by only (1) named developer."
しかし、ライセンス変更の最大のポイントは、以下の箇所です。
"You may continue to develop, test, prototype and demonstrate your application with the programs under this license after you have deployed the application for any internal data processing, commercial or production purposes" (ライセンス同意書の全文はこちら)
このライセンス変更を利用して、世界でNo.1のアプリケーションサーバでJava EEアプリケーションの開発を始めたい、と思ってらっしゃる方は、以下のエントリをご覧下さい。
How to Install WebLogic 12c ZIP on Linux
https://blogs.oracle.com/brunoborges/entry/how_to_install_weblogic_12c
[訳注]
ライセンスの文言は敢えて原文のままにしています。
正確な情報はOracleのサイトをご確認下さい。OTN-Japanも修正済みです。

OTN License
これまでのOTNライセンスでは、OTNライセンスの下で利用しているWebLogic Serverで開発したアプリケーション等を本番環境に移送すると、OTNライセンスの下で使っているWebLogic Serverを継続開発のために利用できませんでした
Oracle Technology Network Developer License Terms
http://www.oracle.com/technetwork/licenses/standard-license-152015.html
Free Developer License
このFree Developerライセンスでは、継続開発が可能になりました。
Oracle Technology Network Free Developer License Terms
http://www.oracle.com/technetwork/licenses/wls-dev-license-1703567.html
その他の制限は以下の通りです。
  • 1ユーザの利用に限定した、開発者向けデスクトップライセンスです。
  • 対象となるWebLogic Serverは、OTNにUpされている全バージョンです。
    • インストーラで同時にインストールされるCoherenceもこの新しいFree Developer Licenseの対象です。
    • その他の製品(Oracle SOA Suiteなど)はこのライセンスの対象外です。
  • チーム開発にはご利用頂けません。
  • サポートはご利用頂けません。
    • サポートが必要な場合は、商用ライセンスの購入が必要です(サポートだけ個別に購入することはできません)。
Oracle Fusion Middleware Software Downloads
http://www.oracle.com/technetwork/middleware/fusion-middleware/downloads/index.html

[WLS] Data Source Security Part 2

原文はこちら。
https://blogs.oracle.com/WebLogicServer/entry/data_source_security_part_2

Part 1では、デフォルトのセキュリティの振る舞いと、振る舞いを変更するために利用可能な様々なオプションをご紹介しました。理解する上でキモとなるトピックの一つは、直接データベースユーザとパスワードの値を使う場合と、WLSユーザとパスワードを関連するデータベースの値にマッピングする場合の違いです。データベースの資格証明の直接の利用は、お客様からのフィードバックに基づいてWLSに最近追加されたものです。この記事ではトレードオフをご紹介します。

資格証明のマッピング vs データベースの資格証明

各WLSデータソースには、キーをマップ、この場合WLSユーザをセキュリティ資格情報(ユーザとパスワード)マップするための機構である資格証明マップがあります。デフォルトでは、接続を取得するときにユーザ名とパスワードが指定されている場合、それらはWLSユーザのクレデンシャルとして扱われ、検証され、データソースに関連付けられている資格マップを使用して、データベースのユーザとパスワードに変換されます。一致するエントリがデータソースの資格証明マップで見つからない場合、データソース定義に関連付けられているユーザとパスワードが使用されます。このデフォルトの機構を考慮して、デフォルトのユーザにどの権限が付与されているか注意する必要があります。対して、無効なデフォルトユーザを定義して、偶然突破できないようにしておくことができます(この場合、プールの初期サイズとしてゼロに設定し、有効なユーザだけがプールに存在できるようにしておく必要があります)。
資格証明マップでエントリを作成するには…
  1. まず、WLSユーザを作成します。管理コンソールで、[セキュリティ・レルム]に移動してレルムを選択します(例:myrealm)。[ユーザーとグループ]>[ユーザー]を選択して、[新規]をクリックします。
  2. 次に、マップを作成します。管理コンソールで、[サービス]>[データ・ソース]からデータソースを選択し、[セキュリティ]>[資格証明マッピング]で[新規]をクリックします。詳細は以下のドキュメントをご覧下さい。
資格証明マッピングのメリットは以下の通りです。
  1. データベースユーザ、パスワードをプログラムにハードコーディングする必要がなく、WLSユーザやパスワードに加えてデータベースユーザ、パスワードを求められることがなくなる
  2. WLSセキュリティとデータベース設定の間に抽象化レイヤを提供するため、多くのWLS資格証明をより小さなデータベース資格証明とマッピングできる。それによって、WLSのユーザが追加されたり削除されたりした場合には、中間層の構成を更新するだけでよくなる。
データソースへのアクセス権を持つユーザの数を減らして、ユーザ保守のオーバーヘッドを減らすことができます。例えば、サーブレットが事前定義された、データソースへのアクセスのための特別なWLSユーザとパスワードを1個持っていて、getConnection(user, password)の呼び出しでコード中にハードコーディングされていると仮定しましょう。すべてのWebLogicユーザがサーブレットに記載されている特定のDBMSへのアクセスを享受することができますが、どのユーザもデータソースへの一般的なアクセス権を持っている必要がありません。例えば、そこに不正アクセスから保護する必要がある"Sales"というDBMSがあるとしましょう。しかし、そこには誰もが必要とするいくつかの日々のデータが含まれています。Salesデータソースは、アクセスを制限しており、サーブレットの中では接続要求に特定のデータソースアクセスの資格証明がハードコードされています。それは、その接続を使って任意の呼び出し元にのみ一般的に必要な日々の情報を配信します。サーブレットは、他のデータを明らかにすることはできませんし、WebLogicユーザは、データソースへの他のアクセスを取得できません。これは、多くの大規模なアプリケーションが取るアプローチで、WLSのデフォルトのマッピング動作の背景の論拠です。

資格証明マッピングのデメリットは以下の通りです。
  1. ユーザ数が多いと管理(作成、更新、削除)が難しい。WLSTスクリプトやカスタムJMXクライアントユーティリティを使って資格証明マップエントリを管理可能。
  2. 資格証明マップをデータソース間で共有できないため、重複する可能性が高い。
一部のアプリケーションでは、資格マップを使用せずに、getConnection(user, password)に渡される資格証明をデータベースの資格証明として扱い、(資格マップを通らずに)それを使ってデータベース接続の認証をする場合があります。これは、[データベース資格証明の使用]を有効にすると利用できます。詳細はOracle WebLogic Server管理コンソールのオンラインヘルプの [Oracleパラメータの構成]を参照してください。
Oracle Fusion Middleware Oracle WebLogic Server Administration Console Online Help 12c Release 1 (12.1.1)
Configure Oracle parameters
http://docs.oracle.com/cd/E24329_01/apirefs.1211/e24401/taskhelp/jdbc/jdbc_datasources/ConfigureOracleParameters.html
[データベース資格証明の使用]オプションは現在のところマルチデータソース構成をサポートしていません。有効にすると、次の属性について、汎用データソースとActive GridLink·データソースの資格証明マッピングをオフにします。
  1. [アイデンティティ・ベースの接続プールを有効化] (このオプションは10.3.6.0以後で利用可能)
  2. [Oracleプロキシ・セッション] (このオプションは10.3.6.0以後で利用可能)
  3. [接続時にクライアントIDを設定](このオプションは10.3.6以後で利用可能)。データーソーススキーマで、クライアントIDの設定機能は[資格証明マッピングを有効化]とわかりづらく命名されていることに注意して下さい(訳注:WLS12.1.1では[接続時にクライアントIDを設定]という表現になっています)。ドキュメントやコンソールでは[クライアントIDを設定]として言及しています。
資格証明マッピングの振る舞いとデータベース資格証明の利用についてまとめます。
  • 資格証明マップを使う場合、データベースにアクセスする必要があるユーザについてデータベースユーザに各WLSユーザをマッピングする必要がある。そうでない場合は、データソースのデフォルトのユーザを使用する。接続を取得する際に常にユーザ、パスワードを指定する場合は、そのような特定ユーザの資格マップエントリがだけを必要とする。
  • ユーザ、パスワードを指定せずにデータベースの資格情報を使う場合、デフォルトユーザとデータソースディスクリプタ内のパスワードを常に使用する。接続を取得するときにユーザ、パスワードを指定すると、そのユーザを資格情報のために使用する。WLSユーザはデータソース接続プロセスに一切関与しない。

[WLS] Data Source Security Part 1

原文はこちら。
https://blogs.oracle.com/WebLogicServer/entry/data_source_security_part_1

Oracle walletを使ってデータソースのセキュリティ資格証明を格納する方法について数件の記事を書いてきましたが、今後WebLogic Server (WLS) のデータソースで利用可能な様々な種類のセキュリティに関する記事を書く予定にしています。思っている以上にたくさんのオプションがありますよ!
この領域では、WLS 10.3.6で様々な機能強化がなされています。
WLS 12.1.2でリリース予定の機能強化ポイントがあり、完全を期すため、ここに含める予定にしていますが、ティーザー広告を意図しているわけではありません。Oracleサポート担当者に問い合わせると、現時点ではWLS 10.3.6に帯するマイナーパッチとして入手することができます。
現在のセキュリティ関連のドキュメントは、いくつかの場所に分散しており、誤った記載があったり、いくつかのトピックが含まれていなかったりします。また、これらの機能の適用方法に関するナレッジが書き留められていないように思われます。これらの記事の目標は、統一された様式でWLSデータソースのセキュリティについて説明し、利用可能な機能を使用する方法をご紹介することです。

WebLogicデータソースセキュリティオプションの概要

デフォルトでは、単一のデータベースユーザとパスワードをデータソースに定義します。パスワード等はデータソースディスクリプタに格納したり、Oracle walletを使うことができます。これは非常にシンプルかつ効率的なやり方です。接続プール中のコネクション全てをこのユーザが保持し、接続を割り当てる際に特別な処理はありません。つまり、均質な接続プールであり、任意のリクエストでセキュリティの観点(アフィニティのような別の側面があります)から任意の接続を取得することができます。アプリケーションのエンドユーザに関係なく、プール中の全ての接続は同じセキュリティ資格証明を使ってDBMSにアクセスします。データソースディスクリプタ(もしくはwallet)から利用可能なので、接続を取得する際に追加の情報は不要です。
java.sql.Connection conn = mydatasource.getConnection();
[注意]
[プロパティ]フィールドに名前と値のペアでパスワードを入力することができます(これは本番環境では許可されません)し、データソースディスクリプタの[パスワード]フィールドにパスワードを入力することができます。 [パスワード]フィールドの値は、物理的なデータベース接続を作成する際にJDBCドライバに渡されるプロパティで定義された任意のパスワードをオーバーライドします。パスワードは構成ファイル中で暗号化され(モジュールファイルのjdbc-driver-paramsタグ中のpassword-encrypted属性として格納されます)、管理コンソールに隠されるので、プロパティ文字列にはパスワードプロパティの代わりにPassword属性を使用することをお勧めします。 [プロパティ]および[パスワード]フィールドは、管理コンソールのデータソース作成ウィザードもしくは[データソースの構成]タブにあります。
JDBC APIを使って、次のようにデータベースのユーザー名とパスワードをプログラムで指定することもできます。
java.sql.Connection conn = mydatasource.getConnection("user", "password");
JDBCの仕様によれば、データベースのユーザーと関連づけられているパスワードを取ることになっていますが、ベンダーによって違った実装をしています。 WLSは、デフォルトでは、アプリケーションサーバのユーザとパスワードとして扱います。このペアを認証して、有効なユーザーであるか、そのユーザーがWLSのセキュリティパーミッションチェックに使用されるかどうかを確認します。その後、デフォルトではデータベースユーザとパスワードをデータソース資格証明マッパーを使ってマッピングします。それゆえ、このAPIは仕様に準拠していますが、データベースの資格証明をアプリケーションコードから一段階離しています。詳細や根拠については後述します。
デフォルトのアプローチは単純ですが、ただ一つのデータベースユーザが全ての作業を実行することを意味するため、少なくともデータベースレベルでは、誰が実際に更新しているのかわかりませんし、SQLの操作を実行ユーザで制限できません。データベースにさせるのではなく、アプリケーションコードにユーザ毎のロジックが必要になります。
データベースの操作に関するユーザごとの情報を提供するよう構成できる様々なWLSデータソースの機能があります。

WebLogicデータソースセキュリティのオプション

下表はWebLogicデータソースでデータベースセキュリティ資格証明を構成するために利用可能な機能を示しています。また、各機能が互いに機能の親和性に関する情報も記載しています。
機能
説明
利用可
利用不可
ユーザ認証
(デフォルト)
デフォルトのgetConnection(user, password) の挙動を示す。入力を検証し、ディスクリプタのユーザ、パスワードを利用する。 クライアントIDの設定 プロキシセッション
IDプーリング
データベース資格証明の利用
データベース資格証明の利用 資格証明マッパーを使わずに、指定されたユーザとパスワードを直接利用する。 クライアントIDの設定
プロキシセッション
IDプーリング
ユーザ認証
マルチデータソース
クライアントIDの設定 接続に関連するクライアントIDプロパティを設定する(Oracle、DB2のみ) 全ての機能で利用可
プロキシセッション 接続に関連する軽量なプロキシユーザを設定する(Oracleのみ) クライアントIDの設定
データベース資格証明の利用
IDプーリング
ユーザ認証
IDプーリング 指定ユーザが保持する異種の接続プール クライアントIDの設定
データベース資格証明の利用
プロキシセッション
ユーザ認証
ラベリング
マルチデータソース
Active GridLink

これらすべての機能は、XAおよび非XAドライバの両方で使用可能であることに注意してください。
現時点では、プロキシ·セッションとデータベース資格情報の利用オプションは、管理コンソールの[データソースの構成]タブの[Oracle]タブにあります(おっと、たとえデータベース資格証明の利用機能はOracleデータベースだけのためでなくてもです)。残りの機能は、管理コンソールの[データソースの構成]タブの[ID]タブにあります(将来的には全て1カ所にまとめる予定です)。
後続の記事では、これらの機能についてより詳細に説明します。全体像を確認する場合はこの表にたち戻って下さい。

[Hardware] SAP Software on Oracle Exadata X3

原文はこちら。
https://blogs.oracle.com/bhuang/entry/sap_software_on_oracle_exadata

2012年10月4日から有効のNote 1590515に、以下の組み合わせでSAP環境でExadataの利用がサポートされると記載されています。
Note 1590515 - SAP Software and Oracle Exadata (v17 valid since 04.10.2012)
https://service.sap.com/sap/support/notes/1590515 (要認証)
  • サポートされるOracle Exadata Database Machineのモデル
    • X2-2
    • X2-8
    • X3-2
    • X3-8

2012年10月12日

[misc] Oracle OpenWorld 2012とJavaOne 2012のキーノート動画やセッション資料について

先頃終了したOracle OpenWorld 2012 San FranciscoとJavaOne 2012 San Franciscoのセッション資料やキーノートの動画の場所をまとめておきます。
セッション資料、キーノートとも、参加できなかった方もご覧頂けます。
セッション資料はPDF形式での提供です。一部のセッションでは資料提供がない場合があります。また、動画を提供しているセッションがあります。
キーノートのハイライトはYouTubeにもUpされています。

2012年10月11日

[FMW] Oracle Fusion Middleware OpenWorld General Session

原文はこちら。
https://blogs.oracle.com/fusionmiddleware/entry/oracle_fusion_middleware_openworld_general

この戦略とロードマップセッションを見逃したり、Hasan Rizvi(Oracle Fusion MiddlewareとJava DevelopmentのExecutive Vice President)のキーノートの動画をご覧になりたいでしょうか。Hasanの「Oracle Fusion Middleware Strategies Driving Business Innovations」というプレゼンテーションでは製品デモやNike、Los Angeles Department of Water & Power、Nintendo、NTT Docomoといったお客様をご紹介しました。
Hasan Rizviのキーノートはこちらからどうぞ。
http://medianetwork.oracle.com/video/player/1873556035001

2012年10月9日

[SOA, OSB] 2 way SSL between SOA and OSB

原文はこちら。
https://blogs.oracle.com/ateamsoab2b/entry/2_ways_ssl_between_soa

SOAコンポジットと外部パートナーリンクとの間で双方向のSSLを使う必要がある場合、以下の手順で実現することができます。
  1. 資格証明ストアを作成、キーストアとサーバ証明書を信頼する
  2. WebLogic Server上でキーストアとSSLを構成する
  3. 双方向SSLを使うよう、サーバを構成する
  4. 双方向SSLを使うよう、SOAコンポジットのパートナーリンクを構成する
  5. SOAエンジンで双方向SSLを使うよう構成する
今回は、テストのためにSOAとOSBを使います。OSBとSOAの別のドメインではじめました。2個のSOAPベースのプロキシサービスをOSBにデプロイし、SOAに2個のコンポジットをデプロイしました。SOAでは、1個のコンポジットがOSBのプロキシサービスを呼び、別のコンポジットがOSBから呼び出されます。同様に、OSBでは、1個のプロキシサービスがSOAコンポジットを呼び出し、他方がSOAから呼び出されます。

1.資格証明ストアを作成し、キーストアとサーバ証明書を信頼する

これは開発環境なので、JDKのkeytoolを使ってストアと自己署名証明書(別名オレオレ証明書)を作成していますが、本番環境ではVerisignのような信頼された認証局から発行された証明書を使うべきです。以下のスクリプトを作成して、この手順で必要なものをご説明しましょう。唯一の要件は、エイリアスとしてmykeyを使う必要がある、ということです。
STOREPASS=welcome1
KEYPASS=welcome1

# generate identity keystore for soa and osb.  Note: For SOA, you MUST use alias mykey

echo "creating stores"

keytool -genkey -alias mykey -keyalg "RSA" -sigalg "SHA1withRSA" -dname "CN=soa, C=US" -keystore soa-default-keystore.jks -storepass $STOREPASS -keypass $KEYPASS

keytool -genkey -alias osbkey -keyalg "RSA" -sigalg "SHA1withRSA" -dname "CN=osb, C=US" -keystore osb-default-keystore.jks -storepass $STOREPASS -keypass $KEYPASS

# listing keystore contents

echo "listing stores contents"

keytool -list -alias mykey -keystore soa-default-keystore.jks -storepass $STOREPASS
keytool -list -alias osbkey -keystore osb-default-keystore.jks -storepass $STOREPASS

# exporting certs from stores

echo "export certs from  stores"

keytool -exportcert -alias mykey -keystore soa-default-keystore.jks -storepass $STOREPASS -file soacert.der
keytool -exportcert -alias osbkey -keystore osb-default-keystore.jks -storepass $STOREPASS -file osbcert.der


# import certs to trust stores

echo "import certs"

keytool -importcert -alias osbkey -keystore soa-trust-keystore.jks -storepass $STOREPASS -file osbcert.der -keypass $KEYPASS
keytool -importcert -alias mykey -keystore osb-trust-keystore.jks -storepass $STOREPASS -file soacert.der  -keypass $KEYPASS
SOA Suiteはアウトバウンドのトラフィックのために、WebLogic ServerのSSL実装ではなく、JDKのSSL実装を使っています。パートナーの公開証明書をインポートしてSOAが利用する信頼されたキーストアに取り込みます。SOAがデフォルトで利用する信頼されたキーストアはDemoTrust.jksで、これは$MW_HOME/wlserver_10.3/server/libにあります(これは起動スクリプトの -Djavax.net.ssl.trustStore で設定されています)。ご自身の信頼されたキーストアをお持ちの場合、ご自身の信頼されたキーストアに証明書をインポートする必要があります。
keytool -importcert -alias osbkey -keystore $MW_HOME/wlserver_10.3/server/lib/DemoTrust.jks -storepass DemoTrustKeyStorePassPhrase  -file osbcert.der -keypass $KEYPASS
この手順を踏まない場合、SOAがOSBのサービスを双方向SSLを使って呼び出した際に以下の実行時例外が発生します。
Message send failed: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

2.WebLogic ServerでキーストアとSSLを構成する

まず、WebLogic Server管理コンソールにログインし、サーバ>構成>キーストアのタブへ移動します。キーストアの種類を「カスタムIDとカスタム信頼」に変更し、残りのフィールドを入力します。
SSLタブへ移動し、IDの項目で詳細設定をクリックします。自己署名証明書を今回VM環境で利用しているため、ホスト名の検証は無効にしました。実際の運用環境のシステムでは、ホスト名検証を実施すべきです。また、「サーバーの証明書を使用」をONにして、アプリケーションがサーバ証明書を使ってHTTPトラフィックを初期化できるようにしました(OSBでこれを有効化することが重要です)。


最後に、「SSLリスニング・ポートの有効化」を[サーバ]>[構成]>[全般]でONにします。



3.  双方向SSLを使うようサーバを構成する

先ほどの手順のスクリーンショットに従うと、[サーバ]>[構成]>[SSL]>[詳細設定]に「相互クライアント証明書の動作」というオプションがあることにお気づきかと思います。これを「クライアント証明書をリクエスト(強制する)」に設定する必要があります。
2と3手順をOSBについても繰り返します。これらの設定が全て終了したら、全サーバを再起動します。

4.SOAコンポジットのパートナーリンクを双方向SSLを使うように構成する

プロジェクトのcomposite.xmlを編集して設定します。パートナーリンクの参照の部分にoracle.soa.two.way.ssl.enabledというプロパティを追加します。

    
    
      WSDLDriven
  true
    
  
OSBでは、プロキシサービスのトランスポート構成で「HTTSが必要」というフラグにチェックします。構成後、composite.jarファイルをリビルドして、Enterprise Manager Fusion Middleware Controlでのデプロイの準備が整いました。

5.SOAエンジンの双方向SSLを構成する

Oracle SOA Suiteは、Oracle WebLogic Serverの実装とSun Secure Socket Layer(SSL)スタックの両方を使って双方向SSLを構成します。
  • インバウンドのWebサービスバインディング用に、Oracle SOA SuiteはOracle WebLogic Serverインフラストラクチャを使うため、SSL用のOracle WebLogic Serverのライブラリを使います。これは既に前の章の手順2と3で実施済みです。
  • アウトバウンドのWebサービスバインディング用に、Oracle SOA SuiteはJRF HTTPClientを使います。そのため、SSL用にSun JDKのライブラリを使用します。これは、Enterprise Manager Fusion Middleware Controlで[soa-infra]を右クリックし、[SOA管理]>[共通プロパティ]を選択してSOAエンジンを設定していきます。

ページの最下部のリンク[詳細SOAインフラ拡張構成プロパティ]をクリックし、[KeystoreLocation]のフィールドにSOAアイデンティティキーストアの完全パスを入力します。



「適用」をクリックし、[ドメイン]>[セキュリティ]>[資格証明]へ移動します。


ここでは、キーストアにパスワードを設定します。注意すべき点として、証明書のエイリアスは手順1で記載したようにmykeyでなければなりませんが、アイデンティティキーストアにパスワードを指定するだけでOKです。これは以下の手順で実施します。
  1. [マップの作成]をクリック
  2. [マップ名]には「SOA」と入力し、[OK]をクリック
  3. [キーの作成]をクリック
  4. 以下のようにパスワード欄にSOAアイデンティティキーストアのパスワードを入力


6.テストとトラブルシューティング

セットアップが完了してサーバを再起動すると、Enterprise Manager Fusion Middleware Controlでコンポジットをデプロイし、テストすることができます。エラーが発生する場合は、サーバログをご覧になってエラーの原因を突き詰めて下さい。
例えば、手順5の設定をせずに双方向SSLをテストすると、BPEL PMからOSBを呼び出した際に以下のようなログが現れます。
java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: oracle.fabric.common.FabricInvocationException: Unable to access the following endpoint(s): https://localhost.localdomain:7002/default/helloword

####<Sep 22, 2012 2:07:37 PM CDT> <Error> <oracle.soa.bpel.engine.ws> <rhel55> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0AFDAEF20610F8FD89C5>

............

<11d1def534ea1be0:-4034173:139ef56d9f0:-8000-00000000000002ec> <1348340857956> <BEA-000000> <got FabricInvocationException

sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
WebLogic ServerのSSLがサーバ証明書をコンソールで利用できるようにせずに、SOAコンポジットをOSBから双方向SSLで呼び出した場合、以下のエラーが発生します。
####<Sep 22, 2012 2:07:37 PM CDT> <Warning> <Security> <rhel55> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <11d1def534ea1be0:-51f5c76a:139ef5e1e1a:-8000-00000000000000e2> <1348340857776> <BEA-090485> <CERTIFICATE_UNKNOWN alert was received from localhost.localdomain - 127.0.0.1. The peer has an unspecified issue with the certificate. SSL debug tracing should be enabled on the peer to determine what the issue is.>

####<Sep 22, 2012 2:07:37 PM CDT> <Warning> <Security> <rhel55> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <11d1def534ea1be0:-51f5c76a:139ef5e1e1a:-8000-00000000000000e4> <1348340857786> <BEA-090485> <CERTIFICATE_UNKNOWN alert was received from localhost.localdomain - 127.0.0.1. The peer has an unspecified issue with the certificate. SSL debug tracing should be enabled on the peer to determine what the issue is.>
####<Sep 22, 2012 2:27:21 PM CDT> <Warning> <Security> <rhel55> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <11d1def534ea1be0:-51f5c76a:139ef5e1e1a:-8000-0000000000000124> <1348342041926> <BEA-090497> <HANDSHAKE_FAILURE alert received from localhost - 127.0.0.1. Check both sides of the SSL configuration for mismatches in supported ciphers, supported protocol versions, trusted CAs, and hostname verification settings.>

参考資料

  1. Oracle® Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite 11g Release 1 (11.1.1.6.3)
    Configuring SSL
    http://docs.oracle.com/cd/E23943_01/admin.1111/e10226/soacompapp_secure.htm#CHDCFABB
  2. Oracle® Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド 11g リリース1 (11.1.1.6.0)
  3. SSLの構成 http://docs.oracle.com/cd/E28389_01/admin.1111/b55916/soacompapp_secure.htm#CHDCFABB
  4. Oracle® Fusion Middleware Securing Oracle WebLogic Server 11g Release 1 (10.3.6)
    Configuring SSL http://docs.oracle.com/cd/E23943_01/web.1111/e13707/ssl.htm#i1200848
  5. Oracle® Fusion Middleware Oracle WebLogic Serverの保護 11g リリース1(10.3.6)
    SSLの構成
    http://docs.oracle.com/cd/E28389_01/web.1111/b61617/ssl.htm#i1200848

2012年10月8日

[Java] Android Layout Preview for NetBeans IDE

原文はこちら。
https://blogs.oracle.com/geertjan/entry/android_layout_preview_for_netbeans

多くの場合、EclopseにはNetBeans IDEに比べてプラグインが多い理由は、Eclipseが標準で備えている機能が少ないからです。例えば、標準でサポートしている機能のおかげで、NetBeans IDEにはMavenプラグインもJava EEプラグインも不要なのです。これらはEclipseでは最も人気のあるプラグインの2つなのですがね。
とはいえ、NetBeans IDEが備えていると素晴らしいと思うのは、Androidのサポートでしょう。コミュニティ主導のNBAndroidプロジェクトのおかげで、この機能はしばらくの間ありましたが、しかしながら待望のGUI機能はありませんでした。
NBAndroid
http://www.nbandroid.org/
Progress on layout preview
http://www.nbandroid.org/2012/10/progress-on-layout-preview.html
本日、プロジェクトが大きく前進したとの発表がありました。つまり、レイアウトプレビューに関する速報です。

このプロジェクトでより多くのGUI機能が出てくるのを楽しみにしています。

2012年10月6日

[Java] JavaOne 2012 - Java Generics

原文はこちら。
https://blogs.oracle.com/thejavatutorials/entry/javaone_2012_java_generics

JavaOne 2012で、Agile Developer, Inc.のVenkat Subramaniamが「The Good, The Bad, and the Ugly of Java Generics」と題したセッションを実施しました。Subramaniam博士はgenericsの利用方法や、genericsやベストプラクティス使用時に注意すべきことを説明しました。
genericsの利用の詳細は、JavaチュートリアルのGenerics trailがお役にたちます。
Lesson: Generics (Updated)
http://docs.oracle.com/javase/tutorial/java/generics/
このチュートリアルは最近拡張されて以下のトピックを含むようになりました。
セッションカタログページから、プレゼンテーションをご覧頂けます。
CON3468 - The Good, Bad, and Ugly of Java Generics
https://oracleus.activeevents.com/connect/sessionDetail.ww?SESSION_ID=3468 
[訳注]現時点では動画のみです。スライドはUpされていません。

[Database] SAP Applications Run Better on Oracle Exadata

原文はこちら。
https://blogs.oracle.com/databaseinsider/entry/sap_applications_run_better_on

必要な結果を得て競争力を維持するには、ビジネスに不可欠なアプリケーションが、最も信頼性が高く最新の情報にアクセスできる必要があります。これが、より優れた生産性、そして大きな節約をするためにOracle Exadata Database Machineに切り替えるSAPアプリケーションのお客様が増えている理由です。
最新のオンデマンドWebcastをご覧頂くと、SAPアプリケーションを実行する上で、Oracle Exadataが理想的なプラットフォームである理由を知って頂けると共に、次のことも知って頂けます。
  • SAPアプリケーションの性能が向上すること
  • 集中化されたスケーラブルなプラットフォームで信頼性が向上すること
  • 素早く安全にかつ簡単に展開できること
以下のリンクで、顧客事例や実践的な展開戦略を含んだハイライトををご覧頂けます。
SAP Applications Run Better on Oracle Exadata
http://www.oracle.com/go/?&Src=7629307&Act=133&pcode=WWMK12054306MPP006

2012年10月5日

[Support] 『オラクル ナレッジ活用ガイド』が、さらに読みやすく、そして親しみやすくなりました!

原文はこちら。
https://blogs.oracle.com/supportjp/entry/オラクル_ナレッジ活用ガイド_が_さらに読みやすく_そして親しみやすくなりました

『オラクル ナレッジ活用ガイド』が読みやすくなって再公開されたそうです。原文は日本語ですので、是非原文を当たって下さい。

[Java] JavaOne Content on Video

原文はこちら。
https://blogs.oracle.com/javaone/entry/javaone_highlights_videos

JavaOneのコンテンツは3つのサイズの動画でご覧頂けます。一口飲むのか、ゴクリと飲むのか、それとも消防署に行くのかによって選んで下さい。

Tall(キーノートハイライト)

YouTubeのJavaチャネルに、JavaOne Playlistがあります。ここでJavaOneのキーノートのハイライトをご覧頂けます。
JavaOne Playlist (YouTube)
http://www.youtube.com/playlist?list=PLB6F4FF1E19BD80FE&feature=plcp

Grande(全てのキーノート)

Oracle Media NetworkのJavaOne 2012チャネルで、キーノートの録画(完全版)をご覧頂けます。
Community Keynoteの動画はまもなくUpされる予定です。
2012 JavaOne - See Highlights of 2012 JavaOne
http://medianetwork.oracle.com/media/channels/2012-javaone/1866721757001

Venti(セッション、BOF、Tutorialの全て)

各セッションの音声とスライドをご覧になるには、JavaOneコンテンツカタログからご覧になりたいセッションを選択して下さい(JavaOneホームページ>Programs>Content Catalog)。動画がご利用頂ける場合は、右の列に"Media"があります。"Presentation Download"からスライドをダウンロードして下さい。セッションのコンテンツはまもなくご利用頂けるようになりますので、しばしお待ち下さい。
JavaOne San Francisco 2012 コンテンツカタログ
https://oracleus.activeevents.com/connect/search.ww?event=javaone