Curl ORB for javaとは
Curl ORB for javaとは、CurlとJavaをシームレスに結合し、高速なデータ通信を実現するためのツールです。Curl ORBを利用することで、CurlアプリケーションからPOJO(Plain Old Java Object)で作成されたjavaオブジェクトのメソッドをコールし、戻り値をCurlアプリケーションで受け取ることができます。また、サーバサイドのjavaクラスからCurlのソースコードを自動生成することも可能です。このツールを用いれば、Curlとサーバサイドjavaとの連携を利用したシステム開発が容易になります。Curl ORB for javaはオープンソースプロジェクト(Apache License2.0)として公開されています。
(上図説明)
コード自動生成ツールにてJavaのクラスからCurlコードを自動生成します。(CORBAなどのIDLは不要で、その代わりにCurlのスタブクラスを生成。)クライアントサイドでは、自動生成されたCurlクラス(サービスクラス)を実行しますと、自動的にサーバサイドのサービスクラスをコールし、処理を実施して結果をクライアントへ返します。 またこの際、Spring frameworkやSeasar2などのDIコンテナで管理されているJavaオブジェクトに対してもコールすることが可能となっています。
CurlORB for javaバージョン0.9 新機能
- モバイル開発環境「Caede」のサポート (参考ページ)
- 【注意点】CurlRTE 6.0, 7.0は未サポート(バージョン0.8をご利用ください)
- その他、バグフィックス …など
CurlORB for javaバージョン0.8 新機能
- CurlRTE8.0対応(6.0, 7.0も対応)
- Valueクラスのサポート
- Decimal型のサポート(Curl8.0以上)
- クライアントキャッシュ機能
- 【注意点】 パッケージ名の変更(COM.CURLAP.ORB → COM.CURL.ORB)
- その他、バグフィックス …など
CurlORB for javaバージョン0.7 新機能
- CurlRTE7.0対応(6.0も対応)
- サーバプッシュ・インターオペラビリティ(Cometフレームワーク Atmosphere などとの連携)
- チューニングパラメータ(@DoNotShareアノテーション) (参考ページ)
- NotNull機能(@NotNull, @DefaultNotNull, @Nullableアノテーション) (参考ページ)
- サロゲートペア対応
- SerializableなRecordDataサポート(参考ページ)
- その他、バグフィックス …など
CurlORB for javaバージョン0.6 新機能
- 追加されたデータ型として、java.math.BigInteger, java.math.BigDecimal, java.sql.Date, java.sql.Timestamp, java.sql.Time, java.sql.Blob, java.sql.Clobを対応 (参考ページ)
- Apache Jmeterなど負荷試験用のORBクライアント (参考ページ)
- 新しいセキュリティ設定 (参考ページ)
- データ通信の圧縮・解凍 (参考ページ)
- クライアント・インターセプター(AOPのような) (参考ページ)
- コード生成ツールのユーザビリティ向上(クラスの一覧検索、デフォルト値の設定など) (参考ページ)
- サービスクラス機能追加(引数にリモートのクラスを指定可能、セッションKILLなど) (参考ページ)
- サービスオブジェクトのコンテナ管理 (参照ページ)
- その他、各種名称変更及びバグフィックス、パフォーマンス向上 …など
CurlORB for javaバージョン0.5までの機能
- CurlからPOJOで作成されたサービスクラスをコール(ステートフル、ステートレス)
- 高速なデータ通信(バイナリデータを使って通信します。)
- コード生成ツール
- 各種データ型(プリミティブ型、String、配列、List、Map、ユーザ定義クラス、RecordSetなど)を対応
- 非同期・同期通信
- 例外ハンドリング(サーバ例外をクライアントでCatchできます。) …など