CurlからJavaのサービスを呼ぶ
curl/project.cprjをダブルクリックし、Curl IDEでプロジェクトを開きます。
メニューから、プロジェクト→プロジェクトの追加を選択し、curl/DEMO/load.scurlを選択すると、DEMOパッケージがロードされます。
テスト用のCurlファイルを作成するため、Curl IDEのメニューからファイル→新規を選択します。
ファイル名にtest.curlを選択し、OKボタンを押下します。そして、以下のようにサービス呼び出しのコードを追加します。
{curl 6.0 applet} {curl-file-attributes character-encoding = "shift-jis"} {applet manifest = "manifest.mcurl", {compiler-directives careful? = true} } {import * from DEMO} {do || データクラスProduct作成 def p1 = {Product} set p1.id = "0001" set p1.name = "abc" set p1.price = 5000 || データクラスProduct作成 def p2 = {Product} set p2.id = "0002" set p2.name = "xyz" set p2.price = 3000 || サービスクラスのインスタンス生成 def service = {ProductService} {service.regiseter-product p1} || registerProductメソッド呼び出し {service.regiseter-product p2} || registerProductメソッド呼び出し {if-non-null products = {service.get-products} then || getProductsメソッド呼び出し {for p in products do || コンソールにサーバから取得したProductを出力 {dump p.id, p.name, p.price} } } }
これで、test.curlをダブルクリックし実行すると、上記コードが実行され、Curlコンソールにサーバに保存されているProductがすべて出力されます。
このようにCurl ORBを使えば、CurlとJavaの通信を容易に実現することが可能です。後は、サーバから取得したデータを画面の各項目にセットしたり、画面の各項目の値をサーバに送信したりすることで、リッチクライアントな画面を開発することができます。