2013年1月31日

[Java] JCache to Miss Java EE 7

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

JCache (JSR 107) がいくつかのデッドラインを逃したため、Java EE 7に間に合わない、という非常に残念なことをお伝えしなければなりません。多くの方に参加頂いたJava EE 7の調査でコミュニティがJCacheに対し強い支持を表明していたように、このことは多くの方々にとって残念であることは疑いありません。
Java EE 7 Survey Results!
https://blogs.oracle.com/reza/entry/java_ee_7_survey_results
しかし、Java EE 7およびJCache EGの両者の合意は、Java EE 7をもうこれ以上遅らせないことが最善だ、というものでした(ご存知の通り、Java EE 7にはJCache以外にも、WebSocket、JMS 2、JAX-RS 2、JSON-P、JavaBatchなどといった数多くのすばらしい機能が含まれています)。
JCacheはJava EE 7から離れて大きく前進し、Java EE 8のすばらしい候補機能となることが期待されています。また、Java EE 8の遙か前に最終化された仕様によるドロップインAPIとして、Java EE 7と共にJCacheと使うこともできるはずです。是非この件に関するJava EE 7 EGやJCache EGの議論をフォローし、コメントをフィードバックされることをお勧めします。
[javaee-spec users] [jsr342-experts] JSR 107
http://java.net/projects/javaee-spec/lists/users/archive/2013-01/message/42
JSR107 progress and Java EE7
https://groups.google.com/forum/?fromgroups=#%21topic/jsr107/-4Jwocokpmk

2013年1月30日

[OSB, Coherence] OSB Result Cache Invalidation from C++ Client

原文はこちら。
https://blogs.oracle.com/jaylee/entry/osb_result_cache_invalidation_from

[訳注]
この方法はサポートされていません。参考にされるのは結構ですが、あくまでも自己責任でお願いします。

最近お客様よりOSB結果キャッシュのデータを無効化したい、との問い合わせを受けました。データを無効かするキーを作成する方法はないので、取り得る最善の方策はフィルタを使うことです。コードスニペットを以下に記載します。
extern "C" void invalidate(char* key) {
    try {
        String::View vsCacheName = "/osb/service/ResultCache";
        NamedCache::Handle hCache = CacheFactory::getCache(vsCacheName);
        ValueExtractor::Handle hExtractor = KeyExtractor::create(ReflectionExtractor::create("getToken"));
        Filter::View vEqualsFilter = EqualsFilter::create(hExtractor, String::create(key));
        hCache->invokeAll(vEqualsFilter, ConditionalRemove::create(AlwaysFilter::getInstance(),true));
    }
        catch (const std::exception& e) {
        std::cerr << "error: " << e.what() << std::endl;
    }

}
ここで一つ問題があります。それは、ビジネスサービスのどの結果を無効化すべきかわからないということです。2個のビジネスサービスがたまたま同じトークンを持っている場合、これは両方のトークンを削除することになって望ましいことではありません。また、インデックスが所定の位置にないため、キャッシュサイズが巨大である場合、パフォーマンスの課題も考えられます。現在のところ、Keyのクラスを作成する方法はわかっていません。独力でやってみようとしましたが、どういうわけか、作成したものとOSBが生成したものが異なっていました。そのため、最後には自作のResultCacheロジックを作成し、この目的を達成したのです。

public class ResultCacheHelper {

    private static String CACHE_NAME = "dist-test";

    public static void put(String key, org.apache.xmlbeans.XmlObject value) throws IOException {
        NamedCache cache = CacheFactory.getCache(CACHE_NAME);
        cache.put(key, serialize(value));

        CacheFactory.log("Cache Key : " + key + " is put in Cache!:" + serialize(value).toString());
    }

    public static org.apache.xmlbeans.XmlObject get(String key) throws IOException, ClassNotFoundException, XmlException {

        XmlObject result;
        NamedCache cache = CacheFactory.getCache(CACHE_NAME);

        byte[] bytes = (byte[]) cache.get(key);

        if(bytes == null) {
            String xmlNull = "null";
            result = org.apache.xmlbeans.XmlObject.Factory.parse(xmlNull);
            CacheFactory.log("Cache Key : " + key + " is not found in Cache!");
        }
        else {
            result = (org.apache.xmlbeans.XmlObject)deserialize(bytes, Thread.currentThread().getContextClassLoader());
            CacheFactory.log("Cache Key : " + key + " is found in Cache!:"+result.toString());
        }

        return result;
    }


    protected static Object deserialize(byte[] bytes, final ClassLoader cl) throws IOException, ClassNotFoundException {

        ObjectInputStream ois = null;

        try {

            ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
            ois = new ObjectInputStream(bais) {

                protected Class resolveClass(ObjectStreamClass desc) throws IOException, ClassNotFoundException {
                    return Class.forName(desc.getName(), false, cl);
                }

            };

            return ois.readObject();
        }
        finally {
            if (ois != null) ois.close();
        }
    }


    protected static byte[] serialize(Object object) throws IOException {

        ObjectOutputStream oos = null;

        try {
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            oos = new ObjectOutputStream(baos);
            oos.writeObject(object);
            return baos.toByteArray();
        }
        finally {
            if (oos != null) oos.close();
        }
    }
}


これで、キャッシュを無効化することができます。
String::View deleteKey = key;
String::View vsCacheName = "dist-test";
NamedCache::Handle hCache = CacheFactory::getCache(vsCacheName);
hCache->remove(deleteKey);
近い将来OSBのキャッシュ無効化機能が追加されると信じています。

[Hardware, Support] Sun System certifications now available in MOS

原文はこちら。
https://blogs.oracle.com/certify/entry/sun_system_certifications_now_available

何年もの間、Oracle Solarisで動作保証しサポート対象となっているハードウェアシステムに関する情報はHardware Compatibility Listに記載されてきました。
Oracle Solaris OS: Hardware Compatibility Lists
http://www.oracle.com/webfolder/technetwork/hcl/index.html
ようやく、MOS(My Oracle Support)ポータルにアクセスできるお客様であればMOSからOracleのSunのシステムに関する情報がご利用いただけるようになりました。この情報はOracleのCertification情報の中に取り込まれています。すべてのCertification情報が単一ソースにまとまったことで、お客様がサポート対象のハードウェアやソフトウェア構成の回答がずっと容易になることでしょう。

以下のスクリーンショットはOracle Solaris 11で動作保証されているハードウェアを、My Oracle Supportで検索しているところです。

My Oracle Supportでの検索結果の例です。

Oracleは引き続きHardware Compatibility ListにOracle製ハードウェア、他社製ハードウェアの情報を掲載していきます。

[Identity Management, Security] Globe Trotters Edition: Virgin Media brings WiFi to London Tube for Olympics 2012

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

(寄稿者)Ben Bulpett, aurionPro SENA

Virgin Mediaはイギリスで最初にブロードバンド、TV、モバイル、家庭電話サービスを統合した会社です。2012年のロンドンオリンピックにあたり、Virgin MediaはパートナーであるaurionPro SENAと共に、Oracle Identity Managementソリューションを使って無料のセキュアなWiFiサービスをロンドンの地下鉄で提供しました。そう、今日ロンドン地下鉄でセキュアなWiFiが使えるのは、ID管理を使っているからなのです!そして、ロンドンオリンピックの遺産として、Oracleのアーキテクチャが他のVirgin Mediaサービスが利用するプラットフォームになっています。是非以下の動画をご覧ください。

このエントリおよび近日開催するWebcastでは、Identity Management、具体定期にはOracle Virtual Directory(OVD)とOracle Entitlements Server(OES)を使い、Virgin Mediaがどうやってバックエンドのレガシーシステム(外だしするよう設計されていない)を使ってサービスを提供したのか、を分析します。.

この大規模な事業の課題はたくさんあります。プロジェクトの最初のスコープはロンドン地下鉄Zone1の72の駅を対象にしていました。ひと駅あたり2個以上のプラットフォームがあって、駅に数百人がいると仮定すれば、サービスは2分ごとに11万5000セッションをサポートする必要がありました。そしてもちろん、customer experienceが鍵でした。つまり、ユーザーにシームレスな体験を提供しながら、ピーク時でも、高可用性を担保する、ということです。

顧客情報を保持している現在のシステムやデータベース、ディレクトリはレガシーアーキテクチャ上にありすぎるほど存在していますが、これらはどれも外出しできるように設計されてはいませんでした。aurionPro SENAと共に、Virgin Mediaは、Oracle Virtual Directoryを使った抽象化レイヤを構成して、顧客データのビューを提供するキャリアクラスのディレクトリを構築し、Oracle Entitlements Serverと統合して、顧客が無料WiFiサービスを利用できるか否かを判断するルールベースの資格付与サービスを構築しています。

Virgin Mediaは、2012年ロンドンオリンピックまでに構築が必須だった、ロンドン地下鉄での無料WiFiサービス(Metro WIFI)を安全に提供することに成功しました。Virgin Mediaによれば、ロンドン地下鉄のWiFiは大成功を収め、70万人以上がすでに利用し、毎日数百万もの接続があります。

しかしながら、オリンピック後にサービス利用の拡大を目論んでいました。付加価値として、サービスをすべての顧客に追加するだけでなく、他のプロバイダにプロバイダの卸も追加しようとしていました。

Metro WiFiと同じようなEnd-to-Endの機能は既存のVirgin Mediaサービスにはありませんでしたので、スクラッチですべてのサービスを作るよりも、Virgin Mediaはすでに自社環境にあるコンポーネントを再利用したかったのです。この新しいサービスをVirgin Media BroadbandやVirgin Media Mobileの既存顧客に利用してもらおうと考えていたためですが、これらの既存コンポーネントが主としてバックエンドのユーザー認証や認可機能(RADIUS、Central LDAP、Virgin Mobileユーザーシステム)にありました。

しかし、こうしたシステム間をつないでVirgin Media WiFiサービスを利用できるようにする仕組みはまだなかったので、本当のところは、このソリューションは既存のコンポーネントを使って構成されており、それらの間を新たに関係づけて、極力新規コンポーネントを使わずに統合したソリューションを提供しています。

ソリューションは3個のOracleソフトウェアコンポーネントからなり、Oracle Hardwareプラットフォーム上で動作しています。

OESはOVDに統合され、認可コンテキストを標準LDAPの検索に提供しています。これを利用すると、OESが提供する認可ポリシーを集中管理機能を使いながら、Steel Belted Radiusは標準LDAPインターフェースを使って異なるユーザーリポジトリのユーザーを認証し、公衆WiFiサービスの利用可否を認可することができます。

このソリューションは、OESに対する認可処理要求の結果を含むLDAPリクエストに、数多くの仮想属性を追加するOVDが作用しています。その後、Steel Belted Radiusがこれらの仮想属性を取り出し、WiFiサービスへの接続を許可・否認することにより、認可を実行します。

ロンドン地下鉄WiFiサービスはVirgin Mediaブロードバンドおよび契約モバイルユーザーベース(Virgin MediaおよびVirgin Mobile)のすべてが利用できるようになるでしょう。

このソリューションに関する詳細を知りたい方は、まもなく実施されるVirgin MediaによるWebcastで情報を入手して下さい。この中で、Virgin Mediaのアーキテクトの一人であるPerry BantonがソリューションパートナーであるaurionPro SENAと共にソリューションの詳細を説明してくれるでしょう。
Virgin Media Takes Identity Management Underground
http://event.on24.com/r.htm?e=558738&s=1&k=C9A6E9B7B1FD0238CF2816D5F8510694
2013年3月28日(木)午前10時(PDT)、午後1時(EDT)
2013年3月29日(金)午前2時(JST)


執筆者について

Ben BulpettはイギリスのaurionPro SENAでAlliance and Enterprise Accounts Directorをつとめています。彼はaurionPro SENAとOracle  UK間の間を取り持っているだけでなく、数多くの重要な戦略的な顧客を担当する役割も担っています。

BenはaurionPro SENAに3年以上在籍し、Oracleとの関係発展に尽力し、Oracle UK and EMEA Partner of the Yearになるため、aurionPro SENAをリードしていました。彼はまた、Virgin MediaでMetro WiFiソリューションに向けOracle製品を配信するチームのリーダーでもありました。Benは25年以上のコンピュータ業界の経験との知識があります。aurionPro SENAに移る前は、営業職や管理職など(CAでのDirector Security Sales、NovellでのUK Sales Directorを含む)を歴任し、重要な企業顧客とMindjet UK Limitedのパートナーを担当していました。既婚で、6人の子供がいます。

2013年1月28日

[SOA] Your Next WebEx Meeting - Powered by Oracle SOA Suite Integration

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

このエントリを読んでいるということは、毎月10億以上の議事録がある600万回以上のWebExミーティングの一つに参加していることでしょう。Ciscoは高トランザクションかつ複雑なインテグレーション要件を持つWebExを買収の上、どうやってシームレスに統合したのでしょうか。
CiscoのParas Jain(ITシニアマネージャ)のビデオを見てほしいのですが、その中で彼はOracle SOA Suiteを使ってWebExをCiscoに6ヶ月で統合し、7ヶ月でOracle SOA Suiteの損益分岐点を達成したこと、達成した主要な利得を説明していますので、是非お聴き下さい。
Oracle SOA Suite: A Showcase for Cisco’s Order Management
http://medianetwork.oracle.com/video/player/2109669122001
Parasは多くの他のお客様が仰有る共通テーマを述べていました。重要な差別化要因は、Oracle SOA Suiteの柔軟性である、と。統合を進める段階では、社内のレガシーアプリケーションについてではなく、将来のクラウドアプリケーションが必要とする機能が何かなんてわかりません。このOracle SOA Suiteの柔軟性のおかげで、未知の将来の要件に対応できるのです。また、バックエンドでOracle SOA Suiteによる統合により、CiscoがiPhoneやAndroid向けに展開しているモバイルEnablement計画についてもParasがコメントしていました。まもなく、Parasが"Customer Insight Webcast Series - Oracle SOA & BPM"で語ってくれることでしょう。配信をお待ち下さい。以下はParasが詳細を説明するスライドのチラ見せです。

2013年1月27日

[Java] Java EE 7 Maven Application (TOTD #197)

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

Java EE 7のAPIがmavenで公開されていること、ご存知でしたか?
完全な組み合わせは以下のwikiに記載があります。では、Java EE 7のmavenアプリケーションをどうやって作成するのでしょうか。
Java EE 7 Maven Coordinates
https://wikis.oracle.com/display/GlassFish/Java+EE+7+Maven+Coordinates
  1. 通常のJava EE 6 mavenアプリケーションを以下のように作成します。
    mvn -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=webapp-javaee6 -DarchetypeVersion=1.5 -DarchetypeRepository=http://repo.maven.apache.org/maven2 -DgroupId=org.glassfish -DartifactId=hello-javaee7 -Dversion=1.0-SNAPSHOT -Dpackage=org.glassfish.hellojavaee7 -Darchetype.interactive=false --batch-mode archetype:generate
    
  2. 生成されたpom.xmlで、以下の記述を...
    
         
         javax
         javaee-api
         
         6.0
         provided
         
        
    
    以下の記述に置き換えます。
    
          
         Java EE 7 
         https://maven.java.net/content/groups/promoted/ 
          
        
    
        
          
         javax 
         javaee-api 
         7.0-b72 
          
        
    
    [訳注]
    翻訳時、原文では、上の<artifactId>の値が、変更前がFull Profile、変更後がWeb Profileになっていましたが、Full Profileであれば、javaee-apiを使うので、記載を変更しています。
    注意頂きたいのは、GlassFish 4 promoted buildに対し、依存性の新しい<version>がある、ということです。これは将来のビルドで簡素化される可能性があります。
    アプリケーションで使うAPIがJava EE 7 Web ProfileのAPIに限定されている場合、<artifactId>の値をjavaee-web-apiに変更することができます。
これで、これまでGlassFishに統合されてきた全てのJava EE 7のAPIがアプリケーションで利用できるようになります。

特定のAPIのJarファイルを明示的にプロジェクトに直接インクルードすることも可能です。最新のAPIは以下の形式で利用頂けます。
一般医、URL中の"b72"を最新のpromoted build番号に置き換えて、最新のアーティファクトを入手することができます。最新のアーティファクトのための簡素化されたURLは現在作成中です。

次は…NetBeansでのMaven ArchetypeとMavenのサポートについて近日ご紹介します。

2013年1月26日

[Java, Security] Oracle Speaks up on Java Security

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

多くの方が強く認識されている通り、最近のJavaの脆弱性に関する、まさにメディア旋風が起こっています。ご存知のように、ブラウザでのJavaに関する脆弱性であってサーバーサイドのJavaやデスクトップでのJavaまたは組み込み用途のJavaに関するものではありません。この問題についてOracleが相対的に沈黙していることに対してもイライラされているのではないでしょうか。

おそらく、Oracleが今や公然と問題に対して声を上げ始めていることがいくらかの安心感をもたらすことでしょう。Oracle SecurityのリーダーであるMartin Smithと、OpenJDKからDoland Smithが、世界中のJava User Groupのリーダーとの電話会議に参加しました。会議の記録音声は以下のリンクから入手可能です。
JUG Leader Call (2013年1月24日)
http://java.net/projects/jugs/downloads/download/Jan24_JUGLeaderCall.mp3
この会議では、Javaセキュリティ、バンドルされているソフトウェアのインストーラー、オープン性、コミュニケーション、最近のマスコミ報道のジャーナリズムや技術面の品質を取り上げ、いくつかの会場でJavaコミュニティリーダーと双方向のフランクなディスカッションを実施しました。DonaldとMartinが会議中に語っていた通り、これがJavaセキュリティとコミュニケーションの最前線で実施されることの氷山の一角になる可能性があります。この重要な対話に参加し、是非コメントを下さい。
John Spraggeは「A passionate defence of Java's virtues」というエントリで、まさにこれらの問題に対し自らの意見を発表しています。GlassFishやJava EE、Javaのファンであれば、一読の価値があるかと思います。
A passionate defence of Java's virtues (Coding Java and XML with JAX-B)
http://javainxml.blogspot.com/2013/01/a-passionate-defence-of-javas-virtues.html

2013年1月25日

[Applications, Exalogic, Virtualization] New Oracle VM Templates Available for Oracle Exalogic

原文はこちら。
https://blogs.oracle.com/virtualization/entry/new_oracle_vm_templates_available

Oracle ApplicationsのOracle Exalogic用Oracle VMのテンプレートが利用できるようになりました。
Oracle Announces Oracle Exalogic Elastic Cloud Templates for Rapid Provisioning of Oracle Applications
http://www.oracle.com/us/corporate/press/1898498
このテンプレートは以下のアプリケーションを対象にしています。
既存のOracle VMテンプレートを使って同じ使いやすさと動作保証に対する安心は備えつつ、さらに、Oracle Exalogic環境に迅速にアプリケーションをデプロイするために、これらの新しいテンプレートを事前に構成しテストが済んだ状態でお届けします。
デプロイに何週間、何日とかかっていたのが数時間、数分に短縮できることを確認下さい。
“Oracle VM – Quantifying the Value of Application Driven Virtualization”というEvaluator Groupの時間節約に関する調査結果レポートも是非ご一読を。
Oracle VM – Quantifying the Value of Application Driven Virtualization
www.oracle.com/us/technologies/virtualization/oracle-vm-validation-report-1738491.pdf

[Java] New OBE Series: Contexts and Dependency Injection (CDI)

原文はこちら。
https://blogs.oracle.com/javatraining/entry/new_obe_series_contexts_and

このOracle By Example (OBE)シリーズでは、Java EE 6で導入されたContexts and Dependency Injection (CDI)の3つの機能(Stereotypes、Interceptors、Events)を取り扱います。
Java EE 6 Context and Dependency Injection (CDI) Series
http://apex.oracle.com/pls/apex/f?p=44785:24:0::NO:24:P24_CONTENT_ID,P24_PREV_PAGE:6393,29
CDIはJava Platform, Enterprise Edition (Java EE) 6にJSR-299として導入されました。
JSR 299: Contexts and Dependency Injection for the JavaTM EE platform
http://jcp.org/en/jsr/detail?id=299
CDIのContextsのパートではbeanに別のbeanのライフサイクルで共有させたり、参加させます。Dependency Injectionのパートでは、シンプルに依存性を注入するだけの手続きで、beanに別のbeanのインスタンスを参照させます。CDIのすごいところは、プロセスのインスタンス化をせず、同時に強い型チェックを強制することで、クラスを疎結合するという能力なのです。
Oracle Learning Libraryに掲載されているすばらしい無料コンテンツ、そして新しいクールなルック&フィールを是非チェックして下さい。
Oracle Learning Library
http://www.oracle.com/oll

2013年1月24日

[Java] Troubleshooting Tools - VisualVM

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

様々な無料のトラブルシューティングツールやデバッグツールがありますが、どのツールがWebLogic Serverでの問題を分析する際に役立つのでしょうか。このブログで、現在利用できるもののうち、無料で使いやすく、非常に効率的に問題の束を見つけ出せるベストなツールをいくつかご紹介していきます。第1回目はVisualVMを取り上げます。
VisualVM
http://visualvm.java.net/
VisualVMの最新版、もしくは1.3.5は2012年11月13日にリリースされました。このツールは実行中のJVMを監視するためのユーザーフレンドリーなUIから構成されています。ローカルもしくはリモートで実行中のJVMに接続するだけで、WebLogic ServerやJavaの複数のインスタンスを同時に監視できます。VisualVMの実行にはOracle Sun JDK 6+のJDK(JREではありません)が必要です。VisualVMは以下のように実行するためのJDKを指定して起動することができます。
visualvm --jdkhome "JDK_location", or visualvm --jdkhome "d:\jdk160_24"
別の方法で、/etc/visualvm.confを変更して利用したいJDKを指定することもできます。起動したら、ローカルで実行中のJavaインスタンスのリストがアプリケーションの左ペインに表示されます。リモートのJVMの場合、当該JVMインスタンスを実行しているホストを定義することができます。実行中のサーバを選択して[open]をクリックすると、以下のような画面が出てきます。

[訳注]
MultiLingual版では日本語表示されます。以下の記述は、日本語環境で使った場合の表示を基にしています。

[開始ページ]では、VisualVMのオンラインドキュメントに簡単にアクセスできます。開始ページの隣のタグで、開いているJVMインスタンスの情報を表示します。上の画面ではWebLogic ServerインスタンスとそのプロセスID(PID)を確認できます。
その下の[概要]では、すべてのJVM設定やWebLogic固有のプロパティを含む、多くのシステムプロパティを表示しています。
[監視]タブでは、CPUやヒープ、クラスやスレッドをリアルタイムに監視することができます。ガベージコレクション(GC)を強制実行したり、詳細に分析するためヒープダンプを取得することもできます。

[スレッド]タブではすべてのスレッドのアクティビティをリアルタイムにレポートするだけでなく、スレッドダンプをとることもできます。すべてのスレッドダンプを左ペインの関係するアプリケーションプロセスにアタッチし、 C:\Users\<user_name>\AppData\Local\Temp\visualvm.dat 以下に保存します(例:  : C:\Users\lgoldszt\AppData\Local\Temp\visualvm.dat\localhost_6352\threaddump-1358534350679.tdump)。ThreadLogicを使うとスレッドダンプをもっと詳しく診断することができます。
ThreadLogic
http://java.net/projects/threadlogic
[サンプラ]タブではCPUやメモリの利用量の動きを記録できます。これは、潜在的なメモリリークやCPU使用率が高いスレッドをデバッグするのにちょうどいいものです。
最後に、[プロファイラ]タブではどの処理で時間を費やしているか、どのオブジェクトがメモリを食いつぶしているかを識別することができます。
メモリのスナップショットをとり、他の例と比較することができます(メニューの[ファイル]>[メモリー・スナップショットを比較])。VisualVMには下図のように簡単にインストールできるたくさんのプラグインも付属しています。

VisualVM にはJConsoleのようなMBeanタブはありませんが、VisualVM-MBeansプラグインをインストールすれば簡単に使えるようになります。
JConsole
http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html
個々のプラグインが提供するものを含めて、豊富な機能を持っていることから、VisualVMは最適なツールであり、JConsole、jstat、jmap、またはjstackといったツールの特性を兼ね備えています。
その他の選択肢の中で、ダウンロードページからはEclipse launcher for VisualVMをダウンロードすることもできます。
VisualVM Download
http://visualvm.java.net/download.htmlEclipse launcher for VisualVM
http://visualvm.java.net/eclipse-launcher.html
もっと詳しい情報やデモを見たい方は、以下のページをご覧ください。
Demo
http://visualvm.java.net/features.html#demo

[Java] Article: From database to RESTful web service to HTML5 in 10 minutes

原文はこちら。
https://blogs.oracle.com/netbeanswebclient/entry/article_from_database_to_restful

NetBeansのプロダクトマネージャであるGeertjan Wielengaが、NetBeans 7.3の新しいHTML5開発機能を使ってJava RESTful Webサービス、そしてWebサービスとお話をするHTML5クライアントを作成する、という内容の記事をJAXenterに寄稿しました。
From database to RESTful web service to HTML5 in 10 minutes
http://jaxenter.com/from-database-to-restful-web-service-to-html5-in-10-minutes-46064.html
データ駆動型HTML5アプリケーションの作成が簡単になってますね。

[SOA/BPM] How to Configure Multiple Authentication Providers for Oracle SOA Suite Human Workflow

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

SOA Suite 11.1.1.4以後でHuman Workflow、もしくは BPM Suite11.1.1.4以後でユーザータスクを複数の認証プロバイダを使って構成する場合には、以下のNoteを是非ご覧ください。
Note 1520268.1 SOA 11g: How to Configure Multiple Authentication Providers for Oracle SOA Suite Human Workflow
https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=%201520268.1
SOA Human WorkflowはOracle Platform Security Services (OPSS)をセキュリティレイヤーとして使っています。11.1.1.3までは、OPSSにはWebLogic Serverの認証プロバイダーを一つだけしか利用できない、という制限があり、認証プロバイダーリストの中の最初の認証プロバイダーに含まれるユーザーやグループだけをサポートしていました。11.1.1.4以後はこの制限が取り払われ、複数のプロバイダーを構成して、idstoreインスタンスのvirtualizeフラグを設定することができます。
設定手順をStep by Stepでご紹介していますので、是非上記Noteをご覧ください。

[EM] Enterprise Manager for Big Data Appliance (BDA) Plugin - 12.1.0.1.0

原文はこちら。
https://blogs.oracle.com/oemcc/entry/enterprise_manager_for_big_data

今月初め(2013年1月)、Enterprise Manager for Big Data Appliance (BDA) Plugin(12.1.0.1.0)のリリースを発表しました。

これはEnterprise Manager for Big Data Appliance (BDA) Pluginの最初のリリースです。このプラグインではEnterprise Managerをお使いのお客様がSelf Update(下のスクリーンショット)からご利用いただくことができます。またこのプラグインの動作検証に関する情報もMy Oracle Supportからご利用いただけます。
BDA
Enterprise Manager 12c Big Data Appliance Plug-in 12.1.0.1を利用すると、以下のことが可能になります。
  1. Big Data Appliance Networkのソフトウェアおよびハードウェアコンポーネントを検出し、これらを管理対象ターゲットとして追加できます。
  2. 単一のターゲットまたは個々のターゲットとして、Big Data Appliance Networkを構成するハードウェアおよびソフトウェア·コンポーネントを管理できます。
  3. 収集したメトリックを研究して、ネットワークやBig Data Applianceコンポーネントのの性能を分析できます。
  4. 可用性やシステムの健全性に基づいた警告を発行できます。
  5. 警告やインシデントに対応できます。

[Java] Is it really EJB vs CDI?

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

Java EE 6にCDIが登場し、後に続くJava EE 7ではCDIを使うEJBが登場します。これに伴い、「いつCDIを使うのか」「いつEJBを使うのか」「現時点でEJBは必要なのか」「EJBはCDIよりも重量級なのか」といった、興味深いいくつかの質問を受けることがよくあります。

David Blevins (OpenEJBとTomEEの主要な開発者)が、こうした質問に対し、洞察に満ちた明快な考えを披露しました。
CDI, when to break out the EJBs (David Blevins' Blog)
http://blog.dblevins.com/2012/11/cdi-when-to-break-out-ejbs.html
DavidはOpenEJBに加えて、Apache CDI実装であるOpenWebBeansの中心的なコミッターでもあるため、何について自身が話しているか、本当にわかっています。Java EE、EJB、CDIに関心のある方には必読ですね。

2013年1月23日

[Cloud, Java, Database] Oracle Cloud Service

今なら30日間無料試用ができますので、試しにOracle Cloud Serviceを使ってみることにしました。
登録にはクレジットカード番号が必要ですが、30日以上使う場合に課金されるだけです。

まず、登録からですね。Oracle Cloud Serviceのページへ行きます。
Oracle Cloud
https://cloud.oracle.com


[Try it]を押すと、下のようなページが出てきます。
ここから使いたいサービスを選択しましょう。
今回はJava Cloud Serviceを使いたいので、赤で囲んだ部分の[Try it]を押します。


この後、Oracleのアカウントを持っているか否かを尋ねてきます。
OTNのアカウントをお持ちであれば[Sign In]、そうでない場合は[Create an Account]を押してアカウントを作成してから進めていきます。


この先は住所、クレジットカード番号などを登録する画面に続きます。
登録が終了すると、以下のようなActivationを要求してくるメールが届きますので、[Activate Order]を押しましょう。
なお、Java Cloud Serviceを使うと、もれなくDatabase Cloud Serviceも使えるようになります。もちろんDatabase Serviceを使う予定がなければ、サービスを立ち上げなくてもかまいません。サービスの立ち上げは後ほど説明します。


Activateしてしばらくすると、Welcomeメールが届きます。
ロジ子の場合、Activate Orderを押してからWelcomeメールが届くまで、約40分かかりました。
今回はUS Commercial 1というデータセンターを使用するようです。現在のところ、データセンターはUS Commercial 1とEMEA Commercial 1の2カ所のようです。今後データセンターの個数、場所も増えていくことでしょう。


続いて、Java Cloud Serviceのドメインを起動します。
Oracle Cloudのトップページ右上の[Sign in]をクリックすると、以下のような画面が現れます。[My Account]の[Sign in to My Account]を押しましょう。ここでのサインインは、oracle.comアカウント、つまりOTNのログインアカウントと同じです。
(まだセッションが残っている場合は、Log outというボタンになっているので、[My Account]をクリックします)


My Accountのページから利用しているサービスなどを確認できます。
このページから、Java、Database、もしくはその両方を立ち上げます(以下はJava Serviceの例ですが、Database Serviceでも同じです)。画面の赤で囲んだボタン、もしくはdatabaseやjavaのリンクをクリックしましょう。


さて、赤丸で囲んだボタンをクリックすると、以下のような画面が現れますので、[Launch Service]ボタンを押します。これでJava Serviceが稼働します。


立ち上げてから同じページを見ると、以下のような画面になっています。


上の画面からService Consoleに進みましょう。[Service Console]のボタンを押すと、以下のようなログインページに移動します。
ここで使うアカウントとパスワードは、Welcomeメールに記載されていた接続のためのアカウント、テンポラリパスワード、ドメインです。テンポラリパスワードは、ログイン後新パスワードへ変更するように促されますので、安全なパスワードにしておきましょう。


ログインすると、リソースの利用状況などのグラフを表示する管理画面が現れます。
ADFベースの画面なので、WebLogic Server管理コンソールというよりはむしろFusion Middleware Controlのイメージに近いですね。


この30日間で、このプラットフォームに何かをデプロイして動かしてみたいと思います。

[WLS] The WebLogic 12c Book is Finally Here

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

ソフトウェアアーキテクト、管理者、開発者といった、かなりWebLogic Serverのことをご存知で、もっと詳細を知りたいけれども、スクリーンショット満載の典型的な「レシピ本」はNo Thank youという方向けに、WebLogic 12c Distinctive Recipesが出ました。この新しい本は、WebLogicの管理、大規模な展開、パフォーマンスチューニングで最大のミスやパフォーマンスチューニングツール、JVM、独自のアプリケーションでのJMXの利用、スタックスレッド、JDBCの神話、効果的なメモリリークの検出、Java EEのサンプル(デプロイとNetBeansプロジェクト)、Oracle Fusion Middleware(Service Bus、SOA Suiteなど)、誇大広告なしのクラウドでのWebLogic(Oracle Java Cloud Service)までを取り扱っているベストプラクティス集です。この本からは、推奨事項、ディスカッション、ベストプラクティス、デプロイ可能なプロジェクト、Webcastの動画、機能を使うべき場合とそうでない場合の説明といった、マニュアルにはない情報を入手することができるでしょう。この本は、公式のコースやマニュアルを完璧に補完してくれます。是非Amazon.comなどでお求め下さい。
Oracle WebLogic Server 12c: Distinctive Recipes (Architecture, Development and Administration) [Paperback] (Amazon US)
http://www.amazon.com/dp/0980798019
Oracle WebLogic Server 12c: Distinctive Recipes: Architecture, Development and Administration [ペーパーバック] (Amazon JP)
http://www.amazon.co.jp/Oracle-WebLogic-Server-12c-Administration/dp/0980798019/
[訳注]
エントリ記載時点では、Amazon Japanでは取り扱っていないようです。

[Cloud, Database] Cloud Data Loading gets easier

原文はこちら。
http://krisrice.blogspot.jp/2013/01/cloud-data-loading-gets-easier.html

Oracle Database Cloud Serviceを試している方に、データの読み込みが1ステップ簡単になりました。これまでは、付与されたロールを使用して作成したAPEXユーザーが必要でした。このやり方もまだ使えますが、今では単純に登録時に作成したクラウドユーザーを使用できます。これは、最初に送られてくるWelcomeメールで作成された管理者ログインです。

データ読み込みを実行する新規ユーザーをクラウド上にセットアップするためには、IDMコンソールをサービスから起動し、新規ユーザーにデータベース開発者(Database Developer)もしくは管理者(Admin)のロールを割り当てます。

2013年1月20日

[Coherence] Focus On The Community: Best practice when using Coherence Cache Listeners

原文はこちら。
https://blogs.oracle.com/OracleCoherence/entry/best_practice_when_using_coherence

Coherenceキャッシュリスナーはアプリケーションがリアルタイムにイベントに反応できるようするための有用かつよく知られている機能です。使いやすい機能ではあるのですが、それゆえに誤解されていたり、間違って使われる可能性もあります。Here Alexey Ragozinがキャッシュリスナーの動作の仕組みを説明し、落とし穴にはまらないための有益なアドバイスをしてくれています。
Coherence 101, Beware of cache listeners (Alexey Ragozinのブログより)
http://blog.ragozin.info/2012/12/coherence-101-beware-of-cache-listeners.html
この機能を使おうと考えている全ての人にとって必読のエントリです。

[Big Data] Oracle R Distribution Performance Benchmark

原文はこちら。
https://blogs.oracle.com/R/entry/oracle_r_distribution_performance_benchmark

Oracle R DistributionはMKLとの利用で劇的に性能向上します。

Rベンチマークとして広く認知されているR-benchmark-25.Rのテストスクリプトを使い、Intelから提供されているMath Kernel Library(MKL)を使った場合と使わなかった場合でのOracle R Distributionの性能を比較してみました。ベンチマークの結果、Oracle R Distributionは動的にロードされる高性能ライブラリと共に使うと、劇的に処理速度が速くなることがわかりました。これらの高性能ライブラリが実行する計算を呼び出す64ビットアーキテクチャ長でのデータ分析や、特定のR関数内での並行処理の利用などによって得られるすばらしい性能改善を、R言語をお使いの方は、オープンソースのR言語ですぐに実感頂けます。
コミュニティが開発したテストは、行列計算や行列関数、プログラム制御、行列の乗算、コレスキー分解(Cholesky decomposition)、特異値分解(Singular Value Decomposition/SVD)、主成分分析(Principal Component Analysis/PCA)、線形判別分析(Linear Discriminant Analysis)で構成されています。こうした計算は、多くの現実世界での問題の主要コンポーネントを形作っており、計算時間の多くをしめることがよくあります。こうした計算の性能向上ができれば、より迅速な判断のためにより速く結果を得ることができます。
報告されているベンチマークの結果はIntel MKLを用いて実施したものですが、Oracle R DistributionはまたAMD Core Math Library (ACML) やSolaris Sun Performance Libraryもサポートしています。

Oracle R Distribution 2.15.1 x64 ベンチマーク結果(時間の単位は秒)
ORD +内部 BLAS/LAPACK
1スレッド
ORD + MKL
1スレッド
ORD + MKL
2スレッド
ORD + MKL
4スレッド
ORD + MKL
8スレッド
性能比 ORD + MKL
4スレッド
性能比 ORD + MKL
8スレッド
行列計算 11.2 1.9 1.3 1.1 0.9 9.2x 11.4x
行列関数 7.2 1.1 0.6 0.4 0.4 17.0x 17.0x
プログラム制御 1.4 1.3 1.5 1.4 0.8 0.0x 0.8x
行列の乗算 517.6 21.2 10.9 5.8 3.1 88.2x 166.0x
コレスキー分解 25 3.9 2.1 1.3 0.8 18.2x 29.4x
特異値分解 103.5 15.1 7.8 4.9 3.4 20.1x 40.9x
主成分分析 490.1 42.7 24.9 15.9 11.7 29.8x 40.9x
線形判別分析 419.8 120.9 110.8 94.1 88.0 3.5x 3.8x
このベンチマークの実行環境は以下の通りです。
  • OS: Linux 5.5
  • ノードあたりのRAM: 47GB
  • CPU:3.07GHz (24コア)
  • クラスタ構成:あり、3ノードで構成
最初のグラフでは、劇的に性能が向上していることがわかります。例えば、特異値分解をOracle R DistributionとMKLの組み合わせで実行した場合、利用しなかった場合に比べて、4スレッドの場合は20倍も速く実行します。8スレッドの場合は29倍も速くなります。コレスキー分解の場合、Oracle R DistributionとMKLの組み合わせでは4スレッドで18倍、8スレッドで30倍も速くなります。

2個目のグラフでは、3つの長時間実行テストに着目しています。行列の乗算は4スレッドで88倍、8スレッドで166倍速く実行できます。主成分分析は4スレッドで30倍、8スレッドで50倍速く、線形判別分析は3倍速く実行できます。

こうしたレベルの性能改善により、アプリケーションの実行時間を短縮でき、その結果インタラクティブかつ動的に生成された結果を容易に利用できるようになります。注意頂きたいのは、Oracle R DistributionとMKLの組み合わせはクライアント側の性能改善だけでなく、Oracle R EnterpriseのEmbedded R Execution(組み込みR言語の実行)を使って実行されるRスクリプトとの組み合わせで使われる場合の性能改善にも、影響があります。こうしたRスクリプトはデータベースサーバーマシンで実行され、同じように性能改善を享受しているのです。

2013年1月18日

[Java] Japanese high-school student recognized by Brian Goetz

原文はこちら。
https://blogs.oracle.com/ceciliaopenjdk/entry/japanese_high_school_student_recognized

以前のエントリで書いたように、OpenJDKコミュニティで技術的に優れたことや、他のメンバーの支援や貢献を目の当たりにすると非常に嬉しいです。
How do I play OpenJDK?
https://blogs.oracle.com/ceciliaopenjdk/entry/how_do_i_play_openjdk
ソフトウェアアーキテクトであり、ラムダ式のグルであるBrian Goetzは、誰かがJavaへの貴重な貢献をしている人物の例をあげました。"bitter_fox"というニックネームの日本人の学生は、OpenJDKのメーリングリストlambda-dev上で一連のパッチを提案しました。例えばlambda-devの7月のメールアーカイブから、彼の提案を見ることができます。
July 2012 Archives by thread (lambda-dev)
http://mail.openjdk.java.net/pipermail/lambda-dev/2012-July/thread.html
Bitter_foxは、問題を発見し調査してから、メールリスト上で背景とパッチの提案を提示しました。この貢献はプロジェクトの進捗にとって本当にありがたいものです。Brian Goetzは、最終的に彼にJavaのお土産を詰めた小さな箱と共に感謝の手紙を送りました。私は日本語が読めませんが、小箱を開けるという、彼のブログ記事をGoogle翻訳を使ってご覧頂けます。
Oracleさんからのお荷物(bitter_foxの日記)
http://d.hatena.ne.jp/bitter_fox/20120925/1348554535

およそ100個のメーリングリストがありますので、興味のある領域からいくつかのメーリングリストに参加して、何が起こっているかチェックして下さい。おそらくJavaへ貢献する方法を見つけることができると思います。
mail.openjdk.java.net Mailing Lists
http://mail.openjdk.java.net/mailman/listinfo

2013年1月17日

[Coherence] Focus On The Community: Avoiding Multiple Simultaneous Database Calls When Using the Cache Aside Pattern

原文はこちら。
https://blogs.oracle.com/OracleCoherence/entry/avoiding_multiple_simultaneous_database_calls

CoherenceのRead-Through機能が使えない場合があります。そのような場合、Cache Asideパターンがよく使われます。
Oracle® Coherence Developer's Guide Release 3.7.1
Read-Through Caching
http://docs.oracle.com/cd/E24290_01/coh.371/e22837/cache_rtwtwbra.htm#CFHHEEBE
Oracle® Coherence開発者ガイド リリース3.7.1
リードスルー・キャッシング
http://docs.oracle.com/cd/E26853_01/coh.371/b65026/cache_rtwtwbra.htm#CFHHEEBE
"cache aside"パターンは、キャッシュを既存のアプリケーションに導入する方法の中でおそらくもっとも簡単でしょう。この方法ではたいていの場合、最小限のコードへの変更が必要ですが、AOPを使うことでコードを変更せずに「注入」することも可能です。些細なことではありますが、いくつか落とし穴があります。例えば、Cache Asideパターンを使う場合には、ご利用の環境で同じデータに対する複数の同時キャッシュリクエストの結果、複数のデータベースリクエストが発生する、というものです。

このパターンを実際のソリューションとして実装する方法と、こうした潜在的な問題を避ける方法について説明している、Anrew Wilson(Coherence Architect@RBS)によるすばらしい記事をご紹介します。
Coherence Cache Aside Pattern
http://wiki.fullten.com.hk/display/AWKL/Coherence+Cache+Aside+Pattern

[Coherence, WLS] Turkcell: Processing 70 million messages per day with Coherence and WebLogic

原文はこちら。
https://blogs.oracle.com/OracleCoherence/entry/turkcell_processing_70_million_messages

Mike Lehmann (Senior Director of Product Management@Oracle)とNiyazi Fellahoglu (Senior Expert, Application & Web Server Administrator@Turkcell)が、Turkcellという、トルコ最大の携帯電話会社が組織全体でOracle WebLogic ServerとOracle Coherenceをどのように使っているかを議論・説明しています。

主要な部分については以下のWebLogic Serverのブログエントリをご覧ください。
Turkcell's usage of WebLogic and Coherence across its Telecom. Environment (The WebLogic Server Blog)
https://blogs.oracle.com/WebLogicServer/entry/turkcell_s_usage_of_weblogic

[Linux] Oracle Linux 5.9 has been released

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

Oracle Linux 5.9という、Oracle Linuxの9回目のアップデートリリースをお知らせできることを嬉しく思っています。ISOイメージはOracle Software Delivery Cloud(旧e-Delivery)から近日中にあうんロードできるようになります。個々のRPMパッケージは既にPublic yumリポジトリからご利用頂けます。このディストリビューションにはUnbreakable Enterprise Kernel Release 2 (2.6.39-300)という、Oracleが推奨するOracle Linux向けのカーネルバージョンが含まれています。詳細はOracle Linux 5.9のリリースノートをご覧下さい。
[El-errata] Oracle Linux Release 5 Update 9 for x86 (32 bit) and x86_64 (64 Bit) architectures
https://oss.oracle.com/pipermail/el-errata/2013-January/003209.html
Oracle Linux
http://oracle.com/linux
Oracle Software Delivery Cloud(旧e-Delivery)
https://edelivery.oracle.com/linux
Public yum Repository
http://public-yum.oracle.com/repo/OracleLinux/OL5/9/
Unbreakable Enterprise Kernel Release 2
https://blogs.oracle.com/linux/entry/oracle_unbreakable_enterprise_kernel_release
Oracle Unbreakable Enterprise Kernel Release 2 Release Notes (Quarterly Update 2)
https://oss.oracle.com/ol6/docs/RELEASE-NOTES-UEK2-QU2-en.html
Oracle Linux 5.9 Release Notes
https://oss.oracle.com/ol5/docs/RELEASE-NOTES-U9-en.html
Oracle Linuxは無料でダウンロード、ご利用、配布できます。UpdateやErrataも無料でご利用頂けますが、サポートに関しては、どのシステムにサポートを必要とするか、どのレベルのサポートが必要かを個々に検討頂けます。
Free Updates and Errata for Oracle Linux
https://blogs.oracle.com/linux/entry/free_updates_and_errata_for
Oracle Linux Support
www.oracle.com/us/technologies/linux/support/overview/index.html
これにより、Oracle Linuxは開発環境および本番環境の両方にとって理想的な選択肢となっています。各システムを最新かつセキュアに保ちながら、どのサポート範囲・レベルが貴社のシステム個々にとって最適なのかを決めて下さい。

2013年1月16日

[Java] Servlet 3.1 in Public Review

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

Servlet 3.1(JSR-340 JavaTM Servlet 3.1)がパブリックレビューの段階になりました。成熟したServlet APIに対する比較的小規模なリリースではありますが、このリリースには数多くの重要な変更、とりわけハイレベルなフレームワークを実現するための変更が含まれています。Servlet 3.1のパブリックレビュードラフトは2月11日に終了しますので、是非仕様をダウンロードし、コメントをフィードバックしてください。

ServletのスペックリードであるShing Wai Chanが親切にも変更点をまとめて紹介してくれています。
Servlet 3.1 in Public Review
http://weblogs.java.net/blog/swchan2/archive/2013/01/11/servlet-31-public-review?force=448
このエントリには、ドラフト仕様のダウンロード先やShing Wai ChanのJavaOneでのServlet 3.1に関するプレゼンテーション資料のダウンロード先も記載されています。
Java EE 7のリリースへと着実に進んでいるのにあわせ、多くのJSRがプロセスを進めています。お楽しみに!

[Hardware] Oracle IaaS with Capacity on Demand – Engineered Systems Hardware for a Monthly Fee. Possibly the Greatest Thing Since Sliced Bread.

原文はこちら。
https://blogs.oracle.com/hardware/entry/oracle_iaas_with_capacity_on

Oracleが業界で最も包括的にして柔軟なクラウド製品およびサービスのポートフォリオを提供していることは不思議なことではありません。パブリッククラウドからプライベートクラウドまで、我々の戦略は、クラウドへの移行において、お客様自身のニーズに対応する製品やサービスでお客様の最善の決断を可能にするようサポートすることです。本日、我々はOracle Infrastructure as a Service with Capacity on Demand(Oracle IaaS)の追加を発表でき興奮しています。
Oracle Delivers Oracle Infrastructure as a Service on Premise with Capacity on Demand(Press Release)
http://www.oracle.com/us/corporate/press/1897474
「Oracle IaaSって何?」って仰有るかもしれませんが、これは、組織がOracle Engineered Systems(Oracle Exadata Database MachineOracle Exalogic Elastic CloudOracle Exalytics In-Memory MachineSun ZFS Storage ApplianceOracle SPARC SuperCluster)をお客様のデータセンターのファイアウォールの後ろに配置でき、しかも全て月々のお支払いでご利用いただけるという、Oracleの最新のプライベートクラウドソリューションです。

そう、驚いたでしょ。今やOn-premiseのOracle Engineered Systemsのハードウェアを、Oracleが所有しているハードウェアを純粋なOpExモデル(運用コストモデル)で、先行設備投資をせずに使うことができます。Oracle IaaSを使えば、ハードウェアの購入やリースをせずに、単に月々の料金を支払うだけですみ、時間をかけてコストを分散することができます。融資や複雑なリース条件は含まれていません。

Capacity on Demandって何でしょう?オンプレミスのEngineered Systemのパワー、セキュリティ、信頼性を必要としながらも、その能力のすべてを常に必要としないお客様のために、Oracle IaaSの各システムでは、ピーク時のワークロードを処理する際にいつでも有効にしたり、不要になったら無効にしたりできる、追加のCPU能力が含まれています。Capacity on Demandを使うと、負荷が突発的にかかったり、業務要件が変わったときには追加の能力を提供しつつ、お客様は当該月間に使用した追加CPU能力に対するお金を支払うだけですむため、インフラストラクチャのコストを削減できます。

待って下さい。もっとすごいんですよ。Oracle Infrastructure as a Serviceには、性能や信頼性、セキュリティを最大化する、業界をリードするサービスが含まれています。月々の料金で、お客様はOracle Premier Support for SystemsOracle Platinum Services、および新しく登場したOracle PlatinumPlus Servicesをご利用いただけます、このOracle PlatinumPlus Servicesとは、4半期ごとに事前に分析、助言するサービスを通じてお客様のシステムを最適な状態に構成されていることを保証するものです。これらのサービスは全て追加料金不要です。

私のいうことを信じてくださいね。Oracle IaaS with Capacity on Demandに関する詳細は、以下のリンクからご覧いただけます。
Oracle Infrastructure as a Service
http://oracle.com/goto/iaas
Mark HurdとJuan Loaizaが1月22日に開催するLive Webcastにも是非ご参加ください。
LIVE webcast Introducing Oracle Infrastructure as a Service
http://event.on24.com/r.htm?e=558492&s=1&k=1E7ADB27DE8D2B205B98B640386C9703

2013年1月14日

[Java] Java SE 7 Update 11 Released

原文はこちら。
https://blogs.oracle.com/java/entry/java_vulnerabilities_addressed

重要なセキュリティの脆弱性の修正を含むJava SE 7 Update 11がリリースされました。脆弱性についてはOracle Security Alert CVE-2013-0422に詳細が記載されています。
Security Alert for CVE-2013-0422 Released(The Oracle Software Security Assurance Blog)
https://blogs.oracle.com/security/entry/security_alert_for_cve_2013
全てのJava 7のユーザーがこのリリースに更新することをOracleは強く推奨します。リリースノートにJava SE 7 Update 11に関する詳細が記載されていますので、是非お読み下さい。ダウンロードは以下のリンクからどうぞ。
Update Release Notes
http://www.oracle.com/technetwork/java/javase/7u11-relnotes-1896856.html
Java SE Downloads
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
未署名(信頼されていない、もしくはセキュリティで保護された)Javaアプリケーションをブラウザで実行する際に使うセキュリティレベルをJavaコントロールパネルからユーザーは制御することができ、セキュリティレベルを5段階から選択できます。"Setting the Security Level of the Java Client"のドキュメントをご覧になると、設定内容とセキュリティ強化の方法がわかります。Henrik Stahlのブログエントリ"Oracle JDK 7u10 Released with New Security Features"でもご覧頂けます。
Setting the Security Level of the Java Client (Java SE documentation)
http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/client-security.html
Oracle JDK 7u10 released with new security features (Henrik on Java)
https://blogs.oracle.com/henrik/entry/oracle_jdk_7u10_released_with
これはセキュリティの脆弱性を修正するための予定外のリリースゆえ、今後Oracleは全ての後続のJava SE 7のリリースに対するリリース番号の値が2ずつ増やし、奇数のリリースではCPUを含むリリースとし、偶数のリリースでは限定したアップデートとしていきます。具体的には、次のJava CPU Updateは2013年2月19日に予定されていますが、JDKリリースバージョンはJava SE 7u13に変わる予定です。

2013年1月11日

[Java] OW2 JOnAS Java EE 6 Web Profile Certified!

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

OW2 JOnASがJava EE 6ファミリーの一員になったことを歓迎します。OW2はJOnAS 5.3.0 M8のスナップショットがJava EE 6 Web Profile TCKを満たしているとめでたく承認されました。これにより、Web Profile実装は8件、公式のJava EE Compatibilityのページに掲載されている認定プラットフォームの総数は19になりました。
Java EE Compatibility
http://www.oracle.com/technetwork/java/javaee/overview/compatibility-jsp-136984.html
他のJava EE 6 Web ProfileプラットフォームにはResinやApache TomEEなどがあります。GlassFish、JBoss AS、WebLogic、WebSphereおよびその他の実装ではfull Java EE 6プラットフォームに準拠しています。


ヨーロッパでよく使われているオープンソースのアプリケーション·サーバーは、現在リリース候補版の段階であり、まもなく最終リリースの段階に達すると予想されます。リリースに関する詳細は以下のリンクからどうぞ。
JOnAS 5.3.0 RC1 released
http://jonas.ow2.org/xwiki/bin/view/Blog/JOnAS+530+RC1+released

[WebCenter] WebCenter Content Performance: Web Browser Choice

原文はこちら。
https://blogs.oracle.com/ATEAM_WEBCENTER/entry/webcenter_content_performance_web_browser

新しいWeb技術のおかげでエンドユーザーがより高速でより強いWebエクスペリエンスを享受できています。しかし、とある組織では古いブラウザテクノロジーにとらわれており、伝統的にベンダーは利用可能な最小のブラウザバージョンを提示しています。WebCenter Contentの場合、Oracle® WebCenter Content Content Serverユーザーズ・ガイド 11gリリース1(11.1.1) の「2.1 サポートされているWebブラウザの使用」には次のような記載があります。
Oracle® WebCenter Content Content Serverユーザーズ・ガイド 11gリリース1(11.1.1)
2.1 サポートされているWebブラウザの使用
http://docs.oracle.com/cd/E28389_01/doc.1111/b65038/c02_gettingstarted.htm#i1074194
"コンシューマおよびコントリビュータは、標準のWebブラウザからコンテンツ・サーバーにアクセスします。コンテンツ・サーバーへのアクセスに使用するコンピュータは、クライアント・コンピュータです。サポートされているクライアント・コンピュータで表2-1にリストされたWebブラウザからコンテンツ・サーバーにアクセスできます。"
表2-1 サポートされているWebブラウザ
ブラウザ
バージョン
Internet Explorer7.0以上
Firefox3.5以上
Safari4.0以上
Google Chrome10.0以上
これらの古いWebブラウザのバージョンの中には、一部のWebアプリケーションの全体的な性能の足を引っ張るものがあります。ブラウザに関してあまりご存じでない方のために、ブラウザの市場を見てみましょう。 StatCounterのグローバル統計によると、1月から2012年12月に、以下の4つのWebブラウザで84%のシェアを獲得しました。
  • Chrome: 32.78%
  • Firefox 5+: 20.88%
  • IE 9.0: 15.88%
  • IE 8.0: 14.61%


出典: http://gs.statcounter.com/#browser_version_partially_combined-ww-monthly-201201-201212-bar

WebCenterContentはブラウザインターフェースでJavaScriptを多用します。ナビゲーション構造、メニュー、オプションリスト、フォルダアイテムのリスト、ページのその他の部分をJavaScriptを使いブラウザが動的に描画します。その理由は、クライアントにJSファイルをキャッシュできるため、ダウンロードやネットワーク負荷を下げることができるからです。また、ページの特定の部分をレンダリングする際の、サーバー側での作業負荷を軽減します。しかし、いくつかのブラウザでは、他よりも速くJavaScriptを処理することができます。

独立したJavaScriptベンチマークサイトであるSunSpiderを使って、IE8とその他のブラウザの性能が劇的に違うことがわかりました。
SunSpider JavaScript Benchmark
http://www.webkit.org/perf/sunspider/sunspider.html
ブラウザ間の差異の大きな理由は、クライアント側でJavaScriptを処理する際に使われるJavaScriptエンジンです。

MicrosoftはIE 9.0をチューニングしており、その結果、WebKit SunSpider JavaScript Benchmarkで好成績が出るようになりました。IE 9.0の最終リリース版での結果は以下の通りです。

出典: http://ie.microsoft.com/testdrive/benchmarks/sunspider/default.html

これらを踏まえて、WebCenter Contentサーバーにアクセスするブラウザを選択する際には、よいJavaScriptエンジンが搭載されている最新のブラウザを使うべきだ、ということですが、まだ多くの組織ではIE 8.0に遭遇することに注意すべきでしょう。これらの企業ではまだWindows XPをOSとして使い続けています。StatCounterによると、デスクトップからのインターネット利用者のうち約31%がWindows XPを利用している、ということです。このOSの場合、IEはIE 8に制限されており、IE 9をWindows XPにインストールすることはできません。Chrome 10以上、Firefox 5以上、IE 9.0以上、Safari 5以上、Opera 11以上だとよい性能が出るでしょう。これに伴い、WebCenter Content 11gを利用するにあたり推奨されるWebブラウザの表は以下のようになります。
ブラウザ
バージョン
Internet Explorer9.0以上
Firefox5.0以上
Safari5.0以上
Google Chrome10.0以上

[Exa*, EM, Virtualization] How To: Enable Single Root I/O Virtualization in Exalogic Elastic Cloud

原文はこちら。
https://blogs.oracle.com/opscenter/entry/how_to_enable_single_root

Oracle Exalogic Elastic Cloud X2-2にはQDR InfiniBand IO Fabricを使って接続されたコンピュート・ノードが含まれています。これらのノードでI/Oを仮想化するためには、Single Root Input Output Virtualization (SR-IOV)を有効にする必要がありますが、ILOMやBIOSのアップデートにより、この設定がリセットされて仮想化が使えないことがあり、仮想化を手早く機能させる際の悩みの種となることがあります。

そんなわけで、SR-IOVを有効にするためのHow Toが以下にまとまっています。
Oracle® Enterprise Manager Ops Center Enabling Single Root Input Output Virtualization in Exalogic Elastic Cloud 12c Release 1 (12.1.2.0.0)
http://docs.oracle.com/cd/E27363_01/doc.121/e35262/toc.htm
Ops CenterのUI、もしくはコマンドラインからSR-IOVを有効にでき、順を追って2つの方法を説明しています。
Enabling Single-Root Input Output Virtualization Using Oracle Enterprise Manager Ops Center UI
http://docs.oracle.com/cd/E27363_01/doc.121/e35262/toc.htm#CBJHJCFD
Enabling Single-Root Input Output Virtualization using ILOM CLI Commands
http://docs.oracle.com/cd/E27363_01/doc.121/e35262/toc.htm#CBJGGFEI
詳細情報が必要な方には、How Toの中でFeature Reference GuideのExalogicの記載箇所へのURLが記載されていますので、そちらからどうぞ。
Oracle® Enterprise Manager Ops Center Feature Reference Guide 12c Release 1 (12.1.2.0.0)
Oracle Exalogic Elastic Cloud
http://docs.oracle.com/cd/E27363_01/doc.121/e27511/ftr_eng_sys.htm#OPCFG6223

2013年1月10日

[Java] It's time to revisit JSF 2.2

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

Java EE 7の登場に合わせてJSF 2.2も間もなく登場します。非常にたくさんのクールかつ新しい機能が含まれていますが、まだWebプロジェクトでJSF 2.2を利用されていない方は、ぜひ再度チェックしてください。"reasons to why I'm reconsidering JSF"というタイトルのエントリをお読みいただくと、将来のプロジェクトでJavaServer Facesを見直すべきか、より理解が深まると思います。
Reasons to why I'm reconsidering JSF
http://blog.brunoborges.com.br/2013/01/reasons-to-why-im-reconsidering-jsf.html
Ed BurnsがJavaOne 2012で紹介した"What’s New in JSF: A Complete Tour of JSF 2.2"というすばらしいプレゼンテーションもあります。これをご覧いただくと、きっとアイデアが浮かんだり、JSFがJava EEプラットフォームとともにどれほど進化したかわかっていただけると思います。
What’s New in JSF: A Complete Tour of JSF 2.2
https://oracleus.activeevents.com/connect/sessionDetail.ww?SESSION_ID=3870 
また、JSF 2.2がJava EE 7にとって何か欠けていると感じてらっしゃるなら、どしどしAdopt-a-JSR for Java EE 7の活動を通じて、JSR 344に対するフィードバックをお願いします。
JavaServer Faces 2.2 (JSR 344) - Adopt a JSR
http://glassfish.java.net/adoptajsr/jsr344.html
Adopt-a-JSR for Java EE 7
http://glassfish.java.net/adoptajsr/

2013年1月9日

[Support] 全世界で大注目の Get Proactive! ページがついに日本語でも登場!!!

原文はこちら。
https://blogs.oracle.com/supportjp/entry/get_proactive_japanese

各製品ライン毎に、重要ナレッジ集へのリンクや、パッチ情報へのリンク、トラブルシューティングに欠かせないツールへのリンクやアップグレード情報へのリンク集に、ワンクリックでアクセスできる Get Proactive! ページの日本語翻訳版が出揃ったそうです。
詳細は原文をどうぞ。

2013年1月7日

[Identity Management] Oracle Directory Server Enterprise Edition 11gR1 certified with SAP NetWeaver AS

原文はこちら。
https://blogs.oracle.com/directoryservices/entry/oracle_directory_server_enterprise_edition

LDAPを使ったユーザー管理のためのDirectory Interface(BD-LDAP-USR)として、SAP NetWeaver ASとOracle Directory Server Enterprise Edition 11gR1の組み合わせがSAP AG社により動作検証され、動作が保証されました。詳細は是非SAP AG社のサイトのページをご覧下さい。
SAP Partner Finder - Partner Information Center: Search
http://www.sap.com/partners/directories/SearchSolution.epx

2013年1月4日

[Java] JMS 2 Public Review Draft Published

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

JMS 2.0は間違いなくJava EE 7の最も重要な構成要素の一つです。 JMS 2.0のEGは本日、正式にパブリックレビュードラフトを公表しました。JMS 2のスペックリードであるNigel Deakinは、すばらしい仕事のやり方をうまくやり通したように思います。彼は、Java.netのJMS 2.0プロジェクトページにパブリックレビュードラフトに関してかなり詳細を説明するページを作成しました。
JMS 2.0 Public Review Draft
http://java.net/projects/jms-spec/pages/JMS20PublicDraft
Nigelは読者に対し、ドラフトやJavadocを読み、参照実装(スタンドアロンまたはGlassFish)をダウンロードし、JMS 2のサンプルコードををちょっと動かして、NigelまたはEGにご意見・ご感想を送ってほしいそうです。このページには、JMS 2.0の実際の変更点をきちんとまとまっています。公式レビュー期間は1月3日から2月4日ですので、ぜひ今すぐチェックしてください。

[SOA] Oracle SOA Suite 11g Developer's Cookbook has been published

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

Antony ReynoldsとMatt Wrightという、既に数多くのSOA Suiteに関する著作を残している2人が、Oracle SOA Suite 11g Developer's Cookbookを先ごろ発行しました。
Antony Reynoldsの著書
http://www.packtpub.com/authors/profiles/antony-reynolds
Matt Wrightの著書
http://www.packtpub.com/authors/profiles/matt-wright
新著は346ページで$59.99ですが、現在発刊特別価格として、Packt Web Siteから印刷本とe-Bookをあわせて$59.99でご提供しています。



この章立ては以下のようになっています。
  • Chapter 1: Building an SOA Suite Cluster
  • Chapter 2: Using the Metadata Service to Share XML Artifacts
  • Chapter 3: Working with Transactions
  • Chapter 4: Mapping Data
  • Chapter 5: Composite Messaging Patterns
  • Chapter 6: OSB Messaging Patterns
  • Chapter 7: Integrating OSB with JSON
  • Chapter 8: Compressed File Adapter Patterns
  • Chapter 9: Integrating Java with SOA Suite
  • Chapter 10: Securing Composites and Calling Secure Web Services
  • Chapter 11: Configuring the Identity Service
  • Chapter 12: Configuring OSB to Use Foreign JMS Queues
  • Chapter 13: Monitoring and Management

2013年1月1日

[Java] JSR updates - Java EE 7 JSRs

原文はこちら。
https://blogs.oracle.com/jcp/entry/jsr_updates_java_ee_7

今週Java 7のJSRに対するJSRへの投稿が多くあり、2012年を締めくくりました。2個のJSR、JSR 346 と 352 (JSR 341339349がパブリックレビュー投票に進んだ最初のJSRでした)が、Executive Committee (EC)の投票により、パブリックレビュー投票を通過しました。今後、最終リリースまでにProposed Final Draftおよび、後に続く別のECによる投票に向けた最終承認投票の提出へと進んでいきます。参考までに、以下のJCP 2.8と上記JSRのJCPタイムラインをご確認ください。
  • JSR 346: Contexts and Dependency Injection for JavaTM EE 1.1
    http://jcp.org/en/jsr/detail?id=346
    Public Review Ballotを通過(Executive Committee (EC) から賛成に18票、JCP 2.9へ)
  • JSR 352: Batch Applications for the Java Platform
    http://jcp.org/en/jsr/detail?id=352
    Public Review Ballotを通過(Executive Committee (EC) から賛成に18票、JCP 2.9へ)

4個のJava EE 7 JSRについて、Public Review Ballots(2013年1月中旬を予定)に先んじてレビューおよびフードバックのためにPublic Draftが先週発行されました。以下のリンクをご覧いただいて、ぜひフィードバックをお願いいたします。Java EE 7 JSRのスケジュールのアップデートを含むリストはJava EE wikiからご覧いただけます。
GlassFish Server Open Source Edition 4.0 > Specification Status (Java EE wiki)
https://wikis.oracle.com/display/GlassFish/PlanForGlassFish4.0#PlanForGlassFish4.0-SpecificationStatus
  • JSR 344: JavaServerTM Faces 2.2
    http://jcp.org/en/jsr/detail?id=344
    Public Review Draftが発行されました(レビュー締め切りは2013年1月14日まで、EC投票は2013年1月15日から)
  • JSR 356: JavaTM API for WebSocket
    http://jcp.org/en/jsr/detail?id=356
    Public Review Draftが発行されました(レビュー締め切りは2013年1月21日まで、EC投票は2013年1月22日から)
  • JSR 338: JavaTM Persistence 2.1
    http://jcp.org/en/jsr/detail?id=338
    Public Review Draftが発行されました(レビュー締め切りは2013年1月21日まで、EC投票は2013年1月22日から)
  • JSR 353: JavaTM API for JSON Processing
    http://jcp.org/en/jsr/detail?id=353
    Public Review Draftが発行されました(レビュー締め切りは2013年1月21日まで、EC投票は2013年1月22日から)

[Java] GlassFish@Google+

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

ご存知のように、オンラインメディアやソーシャルメディアでGlassFishの強い存在感を残すために長い間がんばってきました。以下にGlassFishコミュニティとつながる方法をご紹介します。
我々の存在感をGoogle+にも拡張したかったのです。ぜひ、Google+のGlassFishコミュニティにご参加ください。既に85名以上のメンバーが参加されており、増え続けています(訳注:既に100名を超えています)。
Google+ GlassFishコミュニティ
https://plus.google.com/communities/106098646151660933759