Java
Java Embedded (old, do not use)
リソース
Java ME Embedded Docs
Java ME Embeddedドキュメント
|
![]() |
|
|||||||||||||||||||||
|
|||||||||||||||||||||
|
||
|
|
テクニカル・ドキュメント Installing Linux on an ARM-based BeagleBoard Getting Started with the Oracle Java ME Embedded Client Running a Small Server with the Oracle Java ME Embedded Client |
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||
|
|
Q1:Oracle Java ME Embedded Client 1.1.1製品に含まれるテクノロジーについて教えてください。Oracle Java Micro Edition Embedded Clientは、小型デバイス向けに設計されたクライアント・ミドルウェア・スタックであり、Java ME Connected Device Configuration(CDC)テクノロジーに基づいています。CDCテクノロジーは、TV、Blu-rayディスク・プレーヤ、セットトップ・ボックス、電子書籍リーダー、自動検針装置、多機能プリンタ、ネットワークおよびストレージ機器などに導入されています。 このスタックは、ネットワークおよびグラフィック・サポート機能を備えたフル機能付きのJava仮想マシンを提供します。これには、以下のテクノロジーのサポートが含まれます。
Q2:Oracle Java ME Embedded Clientのシステム要件を教えてください。システム・ハードウェアおよびソフトウェア要件について、詳しくは、リソースのセクションを参照してください。 Q3:Oracle Java ME Embedded ClientでサポートされているAPIを教えてください。詳細なAPIドキュメントは製品に付属しています。開発者は、Oracle Java ME Embedded Client 1.1.1を構成するJava Specification Request(JSR)(jcp.orgで参照可能)を参照することもできます。 CDC APIの概要
Foundation ProfileとPersonal Basis Profileを比較すると、CDC APIの構成内容の確認に役立ちます。これらの違いを理解することは、CDCアプリケーション開発の重要な要素です。名前から分かるとおり、Foundation Profileは、一連の基本的なアプリケーション・サポート・クラスを提供します。Personal Basis Profileは、Foundation Profileに特別な機能を追加しています。 |
|
関係 |
パッケージ/クラス |
説明 |
|
Foundation Profile |
java.io java.lang Java.lang.ref java.lang.reflect java.math java.net java.security java.security.acl java.security.cert java.security.interfaces java.security.spec java.text java.util java.util.jar java.util.zip |
ほとんどのコア・パッケージおよびクラスに対して、J2SE 1.4.2がフル・サポートされています。 領域の節約のため、一部のエンタープライズ・レベルAPIは削除されています。 |
javax.microedition.io |
Generic Connection Framework(GCF)は、さまざまな通信テクノロジーを抽象化することで、特定の接続タイプを参照しなくても、アプリケーションがネットワーク接続を確立し、I/Oを実行できるようにします。 |
|
|
Personal Basis Profileによる追加 |
java.awt java.awt.color java.awt.event java.awt.image |
軽量コンポーネントおよび一部のJava 2Dグラフィック・クラスに対するサポート |
java.beans |
実行時サポートに限定。設計時のJavaBeans操作は、Java SEテクノロジーに基づく統合開発環境(IDE)などの外部Beanエディタによって管理する必要があります。
|
|
java.rmi java.rmi.registry |
xletに対する限定RMIサポート。汎用向けではありません。 |
|
javax.microedition.xlet javax.microedition.xlet.ixc |
Xletサポート
|
Oracle Java ME Embedded Client製品は、TVセットトップ・ボックス、Blu-rayディスク・プレーヤ、電子書籍リーダー、自動検針装置、プリンタ、メディア・プレーヤ、その他の組込みデバイスを含む、リソースの限定されたデバイス向けに設計されています。Oracle Java ME Embedded Client(CDC仮想マシンを利用)が提供するAPIには、Java SEよりも多くの制限がありますが、これらの製品でフットプリントの小さいさまざまなデバイスをサポートできます。
CDC 1.1は、Java SE 1.4.2互換性とリソースに制約があるデバイスのサポートという、2つの目標を中心に設計されています。Java SEとの互換性により、開発者は、ライブラリ、ツール、スキルなどのJava SEテクノロジーへの投資を利用できます。リソースに制約があるデバイスのサポートにより、デバイス・ベンダーは、セキュアなモバイル・エンタープライズ・アプリケーションに対応した機能豊富なJavaランタイム環境を提供できます。
CDCは、全面的なクラス・ロードおよびコア・ライブラリ機能を含むJava仮想マシン仕様を完全にサポートしています。クラス・ライブラリ・レベルでは、CDCは変更されたJava SEクラス・ライブラリを使用します。このインタフェースは、リソースに制約のあるデバイスの要件に合致するように縮小されており、実装は小規模なメモリ環境向けに最適化されています。リソースを節約するため、Java SEに基づく一部のクラス・ライブラリはインタフェースが変更されており、完全に削除されているクラス・ライブラリもあります。その結果、RAMやROMに対する数メガバイトのメモリ割当てに無理なく適合する柔軟なJavaランタイム環境が実現しています。
CDC 1.1仕様はJavaSE 1.4.2のサブセットに基づいており、JavaSE 1.4.2のクラス・ファイルのメジャーおよびマイナー・バージョンをサポートしています。
プロジェクトのハードウェア(CPU、メモリ)要件やOS要件が異なる場合は、こちらからお問い合わせください。
最終的なパフォーマンスはアプリケーションによって異なりますが、Oracle Java ME Embedded Client上で実行されるJavaアプリケーションは、C/C++アプリケーションと同程度のパフォーマンスを発揮します。多くのサード・パーティのテストでは、JavaのパフォーマンスはC/C++と同等か、または優れていることが示されています。Javaの動的なJust-In-Timeコンパイルおよび積極的なインライン化により、静的なC/C++コンパイルよりも最適化に適したターゲット・マシン用コードが生成されます。
Oracle Java ME Embedded Clientは、Java Native Interface(JNI)と呼ばれる、ネイティブ・ドライバおよびC/C++関数へのインタフェースを提供しています。JNIは、ネイティブ・コード周辺のJava認識型のラッパーと、ラッパーを相互参照するための新しいヘッダー・ファイルを作成し、ネイティブ・コードによってパラメータの受け渡しを可能にするJavaプログラムからの呼出しを行うことで機能します。
JavaアプリケーションをデバッグするためのAPIおよびツールが一式提供されており、ローカル・デバッグとリモート・デバッグの両方がサポートされています。リソース管理およびパフォーマンス・プロファイリングのためのAPIやツールも提供されています。CDC-HIがサポートするJVMTIにより、ローカル・デバイスおよびリモート・デバイスによるJavaアプリケーションのデバッグおよびプロファイリングのサポートが可能になります。新規プロジェクトの開発方法、サンプル・テンプレート、およびデバッグ/プロファイリング・セッションの設定方法についての完全なドキュメントは、製品バンドルに含まれています。
CDCは、開発者が異なるユーザー要件やデプロイ・シナリオに対処できるようにする、いくつかのアプリケーション・モデルをサポートしています。これらは、従来のネイティブ・アプリケーションと同様の基本的なスタンドアロン・アプリケーション・モデルから、デプロイとリソース管理のタスクをアプリケーション管理システムにオフロードするマネージド・アプリケーション・モデルまでに及びます。
スタンドアロン・アプリケーション:
もっとも基本的なアプリケーション・モデルは、Javaテクノロジーの初期にまで遡るスタンドアロン・アプリケーション・モデルです。開発者は、ユーティリティ・アプリケーションや生産性アプリケーションなどの決まった目的の設計にスタンドアロン・アプリケーションを使用します。Java仮想マシンの起動時に、ロード対象となるメイン・アプリケーション・クラスの名前が提供されます。このクラスには、必ずmain()という名前のメソッドが含まれており、残りのアプリケーション・クラスのロード、オブジェクト作成、およびメソッド実行を処理します。スタンドアロン・アプリケーションは、Javaランタイム環境と直接やり取りして、独自のライフ・サイクル要件およびシステム・リソース要件を管理します。main()メソッドが終了すると、スタンドアロン・アプリケーションも終了します。
マネージド・アプリケーションXlet
Personal Basis Profileには、xletアプリケーション・モデルに対するサポートが含まれています。このモデルの目的は、アプレット・アプリケーション・モデルに似ていますが、設計が異なります。おもな違いは、xletはAWTに依存せず、より明確なライフ・サイクル・モデルを持つ点です。xletはxletマネージャへロードされ、このマネージャがライフ・サイクルを管理し、XletContextを通じてシステム・サービスを提供します。xletマネージャは、動的にロードされる複数のxletを処理でき、これらのxletは、RMIメカニズムを通じて相互通信できます。
xletアプリケーション・モデルはAWTに依存しないため、スマートフォンからセットトップ・ボックスまでに及ぶGUIシナリオおよび非GUIシナリオの両方でxletを使用できます。
対象デバイス向けのOracle Java ME Embedded Client 1.1.1リリースは、現在はグラフィック・サポートのないヘッドレス形式でのみ利用できます。ヘッドフル形式のランタイムも利用できますが、オラクルによる特別ライセンスが必要であり、公開チャネルでは利用できません。ヘッドフル形式のラインタイムは、Personal Basis Profile(PBP)をサポートしています。PBPは、軽量コンポーネントと一部のJava 2Dグラフィック・クラスをサポートしています。これらのクラスを使用すると、図形の描画、テキストおよびイメージの表示、入力イベントの処理をアプリケーションで実行できます。ヘッドフル形式のランタイムの取得に興味がある場合は、こちらからお問い合わせください。
はい。Oracle Java ME Embedded Client 1.1.1リリースには、JDBC Optional Package for CDC/Foundation Profile(JSR-169)が含まれています。このオプション・パッケージは、インストールされたネイティブの組込みデータベース・ドライバに接続して、問合せを実行するために必要なJavaインタフェースを提供します。このデータベースには、JSR-169と互換性のあるドライバが含まれており、このドライバにはDataSource APIの実装が含まれている必要があります。
セキュリティはJavaテクノロジーの主要な機能であり、当初からJavaプラットフォームの発展を導いてきました。CDCには、さまざまなレベルのセキュリティが含まれており、ユーザー、開発者、サービス・プロバイダ、および企業に、強力なセキュリティ・アーキテクチャを備えたアプリケーション・フレームワークを提供します。
CDCには、Java SEと同じセキュリティ・フレームワークが含まれます。このセキュリティ・フレームワークは、アルゴリズム非依存に基づくため拡張可能であり、さまざまなセキュリティ・サービス実装を使用できるため相互運用が可能です。Foundation Profile(JSR 219)には、以下の3つのオプション・パッケージが含まれており、このフレームワークを使用してセキュリティ機能が追加されています。
はい。Oracle Java ME Embedded Clientを使用すると、別のアプリケーションやシステムのJARファイルをランタイムのCLASSPATHへ追加できます。Javaライブラリおよびアプリケーションが、Oracle Java ME Embedded Clientスタックがサポートするのと同じAPIを使用し、ターゲット・バージョンとして1.4.2を使用して(Javaコンパイラ – javacを用いて)コンパイルされると、Oracle Java ME Embedded Client上で稼働するようになります。
このようなアプリケーションの例には、Jetty Webサーバーやサード・パーティの商用OSGi製品があります。
はい。CDCは、ClassLoaderクラスをサポートしているため、アプリケーションは独自のクラスを定義してロードできます。これにXletライフ・サイクル・モデルとXletManagerを組み合わせることで、複数の同時実行Javaアプリケーションをサポートする基本的なアプリケーション管理システムの開発が可能になります。
オラクルのライセンス、サポートおよびパートナー・プログラムについては、こちらからお問い合わせください。
開始方法は簡単です。このページの上部にある"GETTING STARTED WITH ORACLE JAVA ME EMBEDDED CLIENT"セクションを参照してください。通常、おもなステップは以下の3つです。