バージョン0.9からモバイル開発環境「Caede」でもORBの機能を利用できるようになりました。
以下にCaedeでの利用方法、サポートしているデータ型、制限事項を記載します。
なおCaede バージョン3.0.0で利用する場合、別途注意事項があります。こちらのページを参照してください。
Caedeでの利用方法
- SorceForgeからcurl-orb-V0.9.zipをダウンロードします。
- Eclipse開発環境へCurl ORBをセットアップし、以下の手順でCaedeとJavaを連携するアプリケーションを構築します。以下の手順の詳細についてはCurl ORB for Javaのクイックスタートを参照してください。
- サーバサイドのサービスクラス(POJO)作成
- サーバサイドのサービスクラス(POJO)からCurlコードを自動生成
- 新しいCaedeプロジェクトを作成します。Caedeプロジェクトの作成の詳細はデベロッパーセンターのCaedeのドキュメントを参照してください。
- CaedeプロジェクトにCurl ORBクライアントを取り込むため、ダウンロードしたCurl ORBディレクトリのcurl/COM.CURL.ORB-V0.9/8.0/manifest.mcurlをデリゲート先として選択します。
- Caedeプロジェクトのmanifest.mcurlにダウンロードしたCurl ORBディレクトリのcurl/COM.CURL.ORB.CAEDE-V0.9/8.0/COM.CURL.ORB.CAEDE/load.pcurlを追加します。
(以下はC:/curl-orb-V0.9にダウンロードした場合の例です)
{component package COM.CURL.ORB.CAEDE, location = "C:/curl-orb-V0.9/curl/COM.CURL.ORB.CAEDE-V0.9/8.0/COM.CURL.ORB.CAEDE/load.pcurl" }
- Caedeプロジェクトにクライアントコードを記述します。
- あとは通常のCaedeプロジェクトと同じようにCaedeアプリケーションに変換します。
サポートしているデータ型
Caede ORBのデータ通信には以下のデータ型を利用することができます。
Curl | Java |
int | int |
int8 | byte |
int16 | short |
int32 | int |
int64 | long |
float | float |
double | double |
bool | boolean |
char | char |
String | java.lang.String |
FastArray-of データ型 | 配列 |
Array (Array-of any) | List, ArrayList |
HashTable (HashTable-of any) | Map, HashMap |
COM.CURL.ORB.TYPE.Date | java.util.Date |
COM.CURL.ORB.TYPE.CDate | java.sql.Date |
COM.CURL.ORB.TYPE.CTime | java.sql.Time |
COM.CURL.ORB.TYPE.CTimestamp | java.sql.Timestamp |
COM.CURL.ORB.TYPE.BigInteger | java.math.BigInteger |
COM.CURL.ORB.TYPE.BigDecimal | java.math.BigDecimal |
ユーザ定義型(フィールドは上記のものに限る) | ユーザ定義型(フィールドは上記のものに限る) |
CaedeORBでは以下の変換はサポートしていません。
Curl | Java |
DateTime | java.util.Date |
ByteArray | com.curl.io.serialize.types.ByteArray |
COM.CURL.ORB.TYPE.SerializableRecordSet | com.curl.orb.type.SerializableRecordSet |
COM.CURL.ORB.TYPE.SerializableRecordField | com.curl.orb.type.SerializableRecordField |
COM.CURL.ORB.TYPE.SerializableRecordData | com.curl.orb.type.SerializableRecordData |
COM.CURL.ORB.TYPE.Blob | java.sql.Blob |
COM.CURL.ORB.TYPE.Clob | java.sql.Clob |
またValueクラス、Decimal型もサポートしていません。
利用できない機能
Caede側の制限により、以下の機能は現在利用できません。
- get-jsessionid-in-cookies/clear-jsessionid-in-cookies
- Exceptionバインディング(bind-exception/bind-exceptions/get-exception/get-exceptions/remove-exception/clear-exceptions)
- クライアントキャッシュ
- クライアント・インターセプター
- データ通信の圧縮・解凍
- ヘッダー情報の送信
- サービスクラスをクライアントでコンテナ管理する機能
- パフォーマンス改善アノテーション(@DoNotShare)
- NotNull機能(@NotNull, @DefaultNotNull, @Nullableアノテーション)
- transient属性のフィールドを含むユーザ定義型クラス