JP2002328806A - オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム - Google Patents

オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム

Info

Publication number
JP2002328806A
JP2002328806A JP2001135046A JP2001135046A JP2002328806A JP 2002328806 A JP2002328806 A JP 2002328806A JP 2001135046 A JP2001135046 A JP 2001135046A JP 2001135046 A JP2001135046 A JP 2001135046A JP 2002328806 A JP2002328806 A JP 2002328806A
Authority
JP
Japan
Prior art keywords
program
client
communication interface
server
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001135046A
Other languages
English (en)
Inventor
Soichi Onishi
荘一 大西
Keisuke Nishimoto
圭佑 西本
Sosuke Taira
聡輔 平
Yukihiro Takai
幸宏 高井
Toshihiko Tanimura
俊彦 谷村
Akiyoshi Kimura
映善 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHIKKUSU KK
Original Assignee
SHIKKUSU KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHIKKUSU KK filed Critical SHIKKUSU KK
Priority to JP2001135046A priority Critical patent/JP2002328806A/ja
Publication of JP2002328806A publication Critical patent/JP2002328806A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 制約のあるクライアントに適したオブジェク
ト間通信インタフェースを生成するプログラムにより、
クライアント種類毎に異なる容量又は機能のオブジェク
ト間通信インタフェースを用いた分散オブジェクトシス
テムを提供する。 【解決手段】 プログラム生成用コンピュータ16で実行
し、このプログラム生成用コンピュータ16に入力したサ
ーバプログラム17を解析してこのサーバプログラム17の
作動に必要な処理機能を特定し、このプログラム生成用
コンピュータ16に入力したクライアント種類18を条件と
して、前記処理機能に応じたクライアント種類毎に異な
る容量又は機能の個別オブジェクト間通信インタフェー
ス2を生成するオブジェクト間通信インタフェース生成
プログラム1である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散オブジェクト
システムにおけるサーバの共用オブジェクト間通信イン
タフェースとメッセージを送受信するクライアントの個
別オブジェクト間通信インタフェースを生成するプログ
ラムと、前記プログラムを用いて生成した個別オブジェ
クト間通信インタフェースを用いてサーバ及びクライア
ントがデータ又は処理要求等のメッセージをやりとりす
る分散オブジェクトシステムとに関する。
【0002】
【従来の技術】サーバ及びクライアントがデータ又は処
理要求等のメッセージをやりとりする分散オブジェクト
システムは、古くからネットワーク上でアプリケーショ
ン利用形態として考えられており、当初はサーバ及びク
ライアントそれぞれに通信機能を付加した専用のサーバ
プログラム及びクライアントプログラムを設計していた
が、近年では、効率的なアプリケーション開発と運用に
おける柔軟性等を考慮して、システム全体の整備がなさ
れ始めている。代表的なものとしては、ORB(Object Req
uest Broker)と呼ばれるプログラム群があり、仕様とし
ては業界団体OMGからCORBAが提案されている。
【0003】上記ORBは、接続確立したサーバ及びクラ
イアントの間で、サーバプログラム(Server Object)は
透過プログラム(skelton)を通じてオブジェクト間通信
インタフェース(IOCI)からクライアントへ、クライアン
トプログラム(Client Object,Remote Object)は代理プ
ログラム(Ploxy)を通じてオブジェクト間通信インタフ
ェース(IOCI)からサーバへ、それぞれデータ又は処理要
求等のメッセージをやりとりし、サーバプログラム及び
クライアントプログラムがあたかも一体のアプリケーシ
ョンとして機能するように働かせる。
【0004】通常、サーバは処理能力の高いコンピュー
タが用いられるが、クライアントには様々な能力や機能
の装置が考えられ、当然システムを構成する各プログラ
ムには、こうした種々のクライアントに対応した仕様が
求められている。このため、サーバプログラムとクライ
アントプログラムとの連携を担う重要な構成要素である
オブジェクト間通信インタフェースは、あらゆるサーバ
プログラム、クライアントプログラム、クライアント種
類に応じた汎用性の高い仕様になっている。サーバは、
クライアントからの接続要求に応じて、クライアントプ
ログラム、代理プログラム、そして前記オブジェクト間
通信インタフェースを送信し、接続確立を図るわけであ
る。
【0005】
【発明が解決しようとする課題】近年、携帯電話にオブ
ジェクト指向言語に基づくプログラムが実行できる機能
が付加され、いよいよ携帯電話が分散オブジェクトシス
テムのクライアントとして利用できる状況になってき
た。ところが、携帯電話は大きさから、処理能力が限定
的で、何よりもプログラム実行空間となるメモリの容量
が非常に少ない制約がある。このため、接続要求後、サ
ーバから携帯電話へ送信するクライアントプログラム、
代理プログラム及びオブジェクト間通信インタフェース
の総容量が限定されてしまった。
【0006】クライアントプログラム及び代理プログラ
ムは、システム上で利用するアプリケーションや携帯電
話に応じて作成可能であるから、携帯電話の制約に応じ
た対応は比較的容易である。これに対し、汎用性を求め
たオブジェクト間通信インタフェースは依然携帯電話に
対して容量が大きすぎるという問題が残っていた。理屈
的には、クライアントプログラム等と同様に、改めてオ
ブジェクト間通信インタフェースを作り直すことも考え
られるが、自由な仕様が許されるクライアントプログラ
ム等とは異なり、サーバ及びクライアントの連携を担う
オブジェクト間通信インタフェースを、人間がクライア
ントプログラム毎に作成するのは面倒であり、適切でな
い場合にはシステム全体の能力に影響する問題がある。
【0007】そこで、携帯電話等、制約のあるクライア
ントに適したオブジェクト間通信インタフェースを生成
するプログラムを開発し、クライアント種類毎に異なる
容量又は機能のオブジェクト間通信インタフェースを用
いた分散オブジェクトシステムを提供することとして、
検討した。
【0008】
【課題を解決するための手段】検討の結果開発したもの
が、分散オブジェクトシステムにおけるサーバの共用オ
ブジェクト間通信インタフェースとメッセージを送受信
するクライアントの個別オブジェクト間通信インタフェ
ースを生成するプログラムであって、プログラム生成用
コンピュータで実行し、このプログラム生成用コンピュ
ータに入力したサーバプログラムを解析してこのサーバ
プログラムの作動に必要な処理機能を特定し、このプロ
グラム生成用コンピュータに入力したクライアント種類
を条件として、前記処理機能に応じたクライアント種類
毎に異なる容量又は機能の個別オブジェクト間通信イン
タフェースを生成するオブジェクト間通信インタフェー
ス生成プログラム(以下生成プログラム)である。
【0009】ここで、「サーバプログラムの作動に必要
な処理機能」とは、分散オブジェクトシステムとして実
行する様々な処理、例えば表示、計算、分岐、入力又は
出力といった実行内容を実現するプログラムの機能を指
し、本発明が処理するサーバプログラムが必要とする実
行内容のみを「必要な処理機能」と呼ぶ。サーバプログ
ラムの「解析」とは、サーバプログラムの記述から、前
記必要な処理機能を判別することを意味する。また、
「クライアント種類を条件と(する)」とは、解析結果で
ある必要機能を実現するプログラムの記述を、クライア
ント種類毎に異ならせることを言う。前記プログラムの
記述の違いは、単純に容量の違いをもたらす場合と、実
行する処理態様、すなわち機能自体を異ならせることが
ある。
【0010】ORBに基づく分散オブジェクトシステムで
は、サーバプログラムのソースプログラムからORBコン
パイラによりクラスファイルを生成し、前記クラスファ
イルについてクラス解析や生成ルールのチェックを経て
内容を解析し、前記解析結果に基づいて、サーバプログ
ラムに対応するサーバプログラムとサーバ用オブジェク
ト間通信インタフェースとを仲介をする透過プログラ
ム、及びクライアントプログラムとクライアント用オブ
ジェクト間通信インタフェースとを仲介をする代理プロ
グラムのソースプログラムを生成して、更に透過プログ
ラム及び代理プログラムのクラスファイルを生成する。
本発明の生成プログラムは、前記ORBコンパイラを利用
し、得られた解析結果から、クライアント種類毎に最低
限必要な、すなわち最小容量、機能最適化したオブジェ
クト間通信インタフェースを生成する。このようなORB
コンパイラとしての本発明の生成プログラムは、個別オ
ブジェクト間通信インタフェースと共に、サーバプログ
ラムと共用オブジェクト間通信インタフェースとを仲介
をする透過プログラム、及びこのサーバプログラムに対
するクライアントプログラムと個別オブジェクト間通信
インタフェースとを仲介をする代理プログラムとを同時
に生成する。
【0011】具体的な生成プログラムの処理は、(1)共
用オブジェクト間通信インタフェースからサーバプログ
ラムの作動に必要な処理機能を除く残余機能を除外し
て、(2)クライアント種類毎に異なる例外処理機能のみ
を追加して、又は(3)クライアント種類毎に異なる通信
処理機能のみを追加して生成する実体を備える。共用オ
ブジェクト間通信インタフェースは、従来の汎用性ある
オブジェクト間通信インタフェースでも、本発明の分散
オブジェクトシステム専用のサーバ用オブジェクト間通
信インタフェースでもよく、個別オブジェクト間通信イ
ンタフェースの公倍数的な仕様となる。このため、クラ
イアント種類毎のオブジェクト間通信インタフェース
は、共用オブジェクト間通信インタフェースからクライ
アント種類毎に不要な機能=処理機能を除く残余機能を
除外し、最低限の例外処理機能(エラー処理機能等)と、
クライアント種類毎の通信処理機能(通信プロトコル等)
を付加する構成が好ましいことが分かる。
【0012】具体的な生成プログラムの構成は、クライ
アント種類毎に異なるサーバプログラムの解析及び個別
オブジェクト間通信インタフェースを生成するサブプロ
グラムと、複数あるサブプログラムをクライアント種類
に従って選択して実行させるメインプログラムとから構
成し、サブプログラムはクライアント種類毎の個別オブ
ジェクト間通信インタフェースを構成するプログラム単
位と、このプログラム単位の関連情報と、サーバプログ
ラムをクライアント種類毎に解析し、このクライアント
種類毎の処理機能を特定してこの処理機能をメインプロ
グラムに保存する解析プログラムと、メインプログラム
に保存する解析結果の処理機能を参照してプログラム単
位及び関連情報を選択して組み合わせ、個別オブジェク
ト間通信インタフェースを生成する組立プログラムとか
らなる。
【0013】ここで、プログラム単位は、クライアント
種類毎の個別オブジェクト間通信インタフェースの基本
型を定義した雛形プログラム単位と、クライアント種類
毎の個別オブジェクト間通信インタフェースの単位処理
を定義した部品プログラム単位とから、関連情報は雛形
プログラム単位の組合わせ、この雛形プログラム単位に
対する部品プログラム単位の組合わせ又は各プログラム
単位の関連付けを定義した生成特定情報とからそれぞれ
なる。
【0014】このように、クライアント種類毎に異なる
処理が可能なようにサブプログラムをメインプログラム
から分離したことにより、クライアント種類毎に適切と
なる個別オブジェクト間通信インタフェースは、サブプ
ログラムで特定付けることができるようになる。そこ
で、このサブプログラムは、分散オブジェクトシステム
が利用するクライアント種類に応じて、メインプログラ
ムに対して追加又は削除自在にすると、生成プログラム
の仕様変更や新規クライアント種類への対応を容易にす
ることができる。
【0015】上記生成プログラムを用いれば、クライア
ントプログラム毎に適切なオブジェクト間通信インタフ
ェースを容易に生成できるようになり、分散オブジェク
トシステムのサーバは、サーバ側の共用ブジェクト間通
信インタフェース一つに対し、多数の個別オブジェクト
間通信インタフェースを備えるようになる。これによ
り、本発明に基づく分散オブジェクトシステムは、サー
バはサーバプログラムと、透過プログラムと、共用オブ
ジェクト間通信インタフェースと、クライアントプログ
ラムと、代理プログラムと、クライアント種類毎に異な
る容量又は機能の個別オブジェクト間通信インタフェー
スとを有してなり、このサーバに接続要求してきたクラ
イアントに対し、クライアントプログラムと、代理プロ
グラムと、このクライアント種類毎の個別オブジェクト
間通信インタフェースとをこのサーバがクライアントに
送信し、接続確立したこのサーバ及びクライアントの間
で、サーバプログラムは透過プログラムを通じて共用オ
ブジェクト間通信インタフェースからクライアントへ、
クライアントプログラムは代理プログラムを通じて個別
オブジェクト間通信インタフェースからサーバへ、それ
ぞれデータ又は処理要求等のメッセージをやりとりす
る。
【0016】基本的なサーバは、処理装置であるサーバ
用コンピュータと記憶装置とから構成する。各プログラ
ム及びオブジェト間通信インタフェースは、サーバを構
成する記憶装置に記憶させており、必要に応じてサーバ
用コンピュータに読み出したり、サーバ用コンピュータ
を通じてクライアントへ送信(ダウンロード)する。各プ
ログラムのうち、サーバプログラム、透過プログラム及
びクライアントプログラムはプログラム単位に、代理プ
ログラム及び個別オブジェクト間通信インタフェースは
前記プログラム単位毎かつクライアント種類毎にあり、
共用オブジェクト間通信インタフェースはサーバ単位に
設ける。サーバ用コンピュータは、通常Webサーバとし
て機能し、インターネットに対して公開するHP(ホーム
ページ)を通じて分散オブジェクトシステムとしてのサ
ービスを提供することになる。
【0017】接続要求してきたクライアントの種類を判
別して、対応する個別オブジェクト間通信インタフェー
スを選択する方法は、いくつか考えられる。例えば、
(1)サーバにはクライアントが使用を希望するサーバプ
ログラム及びクライアントプログラムの組合わせをこの
クライアント種類毎に指定する選択データベースを有し
てなり、サーバはクライアントの接続要求に際してこの
クライアントに前記選択データベースから組合わせを選
択してもらい、このクライアントの選択に基づいてクラ
イアントへ送信するクライアントプログラム、代理プロ
グラム及び個別オブジェクト間通信インタフェースを特
定する。これは、HP上にプログラム単位毎かつクライア
ント種類毎に分けられたダウンロードリンクを設けてお
き、クライアント主導でクライアントプログラム、代理
プログラム及び個別オブジェクト間通信インタフェース
を選択してダウンロードする場合である。選択データベ
ースは記憶装置に設けておく。
【0018】また、(2)サーバにはクライアントが使用
を希望するサーバプログラム及びクライアントプログラ
ムの組合わせをこのクライアント種類毎に指定する選択
データベースと、クライアントから送信されてくるクラ
イアント種類のデータから前記選択データベースの組合
わせを自動的に選択する選択プログラムとを有してな
り、サーバはクライアントの接続要求に際してこのクラ
イアントよりクライアント種類のデータを送信してもら
い、このクライアント種類のデータに基づいて選択プロ
グラムが選択データベースから組合わせを自動的に選択
し、この選択に従ってクライアントへ送信するクライア
ントプログラム、代理プログラム及び個別オブジェクト
間通信インタフェースを特定してもよい。これは、上記
選択と処理手順は同じであるが、クライアント主導の選
択ではなく、サーバに設けた選択プログラムによる自動
選択(サーバ主導)を採用している。利用するサービスの
選択のために、HP上にはプログラム単位の選択ボタンを
設けることになるが、ダウンロードすべきプログラム等
の特定は、選択ボタンの種類と予めサーバに向けて送信
されるクライアント種類のデータとから、選択プログラ
ムが選択ベースの組合わせを選択することになる。
【0019】
【発明の実施の形態】以下、本発明の実施形態につい
て、図を参照しながら説明する。図1は本発明を用いた
分散オブジェクトシステムの構築例を示すシステム構成
図、図2は分散オブジェクトシステムの作動説明図、図
3は個別オブジェクト間通信インタフェース生成プログ
ラム1の基本構成図、図4は生成プログラム1の具体的
構成図、図5は生成フローチャート図、図6はクライア
ント主導で個別オブジェクト間通信インタフェース(Cli
ent IOCI)2を選択するシステム構成図であり、図7は
サーバ主導で個別オブジェクト間通信インタフェース2
を選択するシステム構成図である。本例の分散オブジェ
クトシステムは、ORBと呼ばれるシステム構成(図2参
照)で、サーバプログラム(Server Object)3、透過プロ
グラム(Skelton)4及び共用オブジェクト間通信インタ
フェース(Server IOCI)5で「ORBサーバ」を構成する。
【0020】サーバ6は、図1に見られるように、サー
バ用コンピュータ7と記憶装置8とで構成する。クライ
アント9,10,11,12は、インターネットを利用できる端
末装置であれば種類を問わず、例えばデスクトップ型コ
ンピュータ9、ノート型コンピュータ10、PDA(個人情報
端末)11やインターネット利用可能な携帯電話12等を例
示できる。これらクライアント9,10,11,12は、インタ
ーネット13を介してサーバ用コンピュータ7と接続し、
このサーバ用コンピュータ7が公開するHP(ホームペー
ジ、図示略)を通じてサービスを利用する。
【0021】サーバ6を構成する記憶装置8には、サー
バ用コンピュータ7が利用するサーバプログラム(Serve
r Object)3、透過プログラム(Skelton)4及び共用オブ
ジェクト間通信インタフェース(Server IOCI)5と、ク
ライアント9,10,11,12が利用するクライアントプログ
ラム(Client Object)14、代理プログラム(Ploxy)15及び
個別オブジェクト間通信インタフェ−ス(Client IOCI)
2を有する。クライアント9,10,11,12へのサービス提
供開始時(接続確立後)、クライアント9,10,11,12へク
ライアントプログラム14、代理プログラム15及び個別オ
ブジェクト間通信インタフェ−ス2をダウンロードし
て、図2に見られるシステムの利用を始める。
【0022】本発明の生成プログラム1は、例えば図1
に見られるように、別途用意したプログラム生成用コン
ピュータ16で実行し、入力されたサーバプログラム(Sou
rseCode)17から、クライアント種類(Client Option)18
に応じ、透過プログラム4、代理プログラム15と、クラ
イアント種類毎に異なる容量又は機能の個別オブジェク
ト間通信インタフェース2を生成し、記憶装置8へ格納
する。サーバ用コンピュータ7をプログラム生成用コン
ピュータとしてもよい。
【0023】生成プログラム1は、サーバプログラム17
から個別オブジェクト間通信インタフェース2を生成す
ると同時に、透過プログラム4及び代理プログラム15を
生成するコンパイラである。本例の生成プログラム1の
基本的構成は、図3に見られるように、コンパイラとし
ての機能を果たすメインプログラム(Main Program)19に
対して、クライアント種類毎に異なる個別オブジェクト
間通信インタフェース2を生成するためのサブプログラ
ム(Sub Program)20を付加した構成にある。こうしたメ
インプログラム19とサブプログラム20との構成は、サブ
プログラム20をクライアント種類毎に用意し、適宜付加
又は削除するだけで生成プログラム1の仕様を変更でき
るので、将来クライアントの仕様が変更された場合で
も、生成プログラム1を利用できる利点がある。
【0024】生成プログラム1のメインプログラム19
は、図4に見られるように、コンパイラ機能を担うコン
パイラプログラム(ORB Compiler)21と、解析結果を保持
する結果保持プログラム(ORB Information)22とからな
る。また、サブプログラム20は、クライアント種類毎に
内容の異なる解析プログラム(Class Analyzer)23と、組
立プログラム(Generation Manager)24と、プログラム単
位としての雛形プログラム単位(Template)25及び部品プ
ログラム単位(Unit)26と、関連情報及び基礎的なプログ
ラム単位の組立までを担う基礎組立プログラム(Templat
e Generater)27とからなる。基礎的なプログラム単位の
組立までを組立プログラム24に担わせるようにすれば、
基礎組立プログラム27は関連情報を組立プログラムに提
供するのみの機能となる。本例では、部品プログラム単
位26として「Java Beans」を用いている。
【0025】個別オブジェクト間通信インタフェース2
の生成手順は、図5に従う。まず、生成プログラム1を
実行したプログラム生成用コンピュータ(PC)16(図1参
照)に対してサーバプログラムのソースファイル(Sourse
Code)17を入力する。併せて、生成プログラム1のイン
タフェースからクライアント種類18を選択し、入力す
る。このクライアント種類18の選択は、サブプログラム
20に対応した選択肢があり、選択できないクライアント
種類18はサブプログラム20が存在しないことを意味す
る。こうして、個別オブジェクト間通信インタフェース
2の生成に必要な要素が揃ったので、以後はプログラム
生成用コンピュータ16内で自動的に処理が進んでいく。
【0026】生成プログラム1に入力されたサーバプロ
グラム17はソースファイルであるため、初めにコンパイ
ルして「Class」と呼ぶ実行ファイル(Execute Code)を
生成する。サブプログラム20の解析プログラム23は、前
記実行ファイルを解析対象として、(a)処理機能と(b)生
成ルールを特定し、逐次メインプログラム19の結果保持
プログラム22に受け渡し、一時保存する。これら(a)処
理機能及び(b)生成ルールは、いわば個別オブジェクト
間通信インタフェース2の「設計図」である。
【0027】解析プログラム23による解析が終了する
と、次に組立プログラム23が結果保持プログラム22の
(a)処理機能及び(b)生成ルールを参照し、適切な雛形プ
ログラム単位25及び部品プログラム単位26を選んで組立
を開始する。具体的には、(a)処理機能及び(b)生成ルー
ルにより、適切な雛形プログラム部品25を選定し、この
雛形プログラム部品25に対して、処理機能に応じた部品
プログラム単位26を組み込んでいく態様で、個別オブジ
ェクト間通信インタフェースを生成する。ある雛形プロ
グラム部品25に対して、別の雛形プログラム部品25を組
み込んでもよい。ここで、単位プログラム部品26が例外
処理機能(エラー処理等)や通信処理機能(プロトコル等)
を提供するが、雛形プログラム部品25に必要な単位プロ
グラム部品26を組み込んで、例外処理機能や通信処理機
能としてもよい。
【0028】このように雛形プログラム部品25及び単位
プログラム部品26を組み合わせることで、多様な個別オ
ブジェクト間通信インタフェース2を柔軟に生成するこ
とができる。また、サーバ6やクライアント9,10,11,1
2の仕様変更や、分散オブジェクトシステムの仕様変更
に応じた対応も容易になる利点がある。
【0029】組立プログラム1が最初に生成する個別オ
ブジェクト間通信インタフェースは、ソースファイル(S
ourse Code)である。このため、生成プログラム1は、
前記ソースファイルをコンパイルし、個別オブジェクト
間通信インタフェース2を出力する。こうして生成した
個別オブジェクト間通信インタフェース2は、サーバプ
ログラム3に対応した処理機能に限定しており、クライ
アント種類に応じた最低限の例外処理機能及び通信処理
機能を備えているだけなので、機能がクライアント種類
毎に最適化されているだけでなく、容量が小さくなって
いる。これにより、とりわけ制約のある携帯電話12に適
した個別オブジェクト間通信インタフェース2の提供が
可能になる。本例の処理手順では説明を省略したが、生
成プログラム1はコンパイラとして、別途透過プログラ
ム4及び代理プログラム15もソースファイルとして生成
し、同じくコンパイルして出力することになる。
【0030】生成される個別オブジェクト間通信インタ
フェース2は、プログラム毎にサーバ6が対応するクラ
イアント種類だけ生成することになる。対して、サーバ
6が利用する共用オブジェクト間通信インタフェース5
は、基本的に一つで済む。こうして、プログラム毎にサ
ーバプログラム(Server Object)3、透過プログラム(Sk
elton)4、クライアントプログラム(Client Object)14
を、そしてプログラム毎かつクライアント種類毎に代理
プログラム(Ploxy)15及び個別オブジェクト間通信イン
タフェース2を記憶装置8に有し、サーバ用コンピュー
タ7が共用オブジェクト間通信インタフェース5を利用
する(図6参照)。本例では、代理プログラム15もクライ
アント種類毎に用意しているが、代理プログラム15はク
ライアント種類毎に共通であってもよい。
【0031】クライアント12が、自身に適合する個別オ
ブジェクト間通信インタフェース2を利用するには、ク
ライアント種類18をサーバ6に知らせ、ダウンロードす
べき個別オブジェクト間通信インタフェース2を選択し
なければならない。本発明では、クライアント種類毎に
ダウンロードすべきプログラムの組合わせを選択データ
ベース29として記憶装置8に備え、(1)クライアント主
導、又は(2)サーバ主導で選択するようにしている。
【0032】(1)クライアント主導で個別オブジェクト
間通信インタフェース2を選択する場合、図6に見られ
るように、接続要求を求めてきたクライアント12に対
し、Webサーバとしてのサーバ用コンピュータ7が選択
データベース29に対応するダウンロードリンクを列記し
たHPを提示する。このダウンロードリンクは、プログラ
ム数×クライアント種類数だけ設けてあり、例えばリス
ト表示する。クライアントの利用者は、前記リストから
希望するプログラムと自身のクライアント種類に適合す
るダウンロードリンクを選択すると、クライアントプロ
グラム14、代理プログラム15及び個別オブジェクト間通
信インタフェース2の組合わせを自動的にクライアント
12へのダウンロードを開始する。ダウンロードを終え
て、クライアントプログラム14が利用可能になると、以
後は分散オブジェクトシステムとしてサーバプログラム
3及びクライアントプログラム14が一体に機能しはじめ
る。
【0033】(2)サーバ主導で個別オブジェクト間通信
インタフェース2を選択する場合、図7に見られるよう
に、接続要求を求めてきたクライアント12に対し、(a)
サーバ用コンピュータ7から発したデータ送信要求の応
答として、又は(b)接続要求に続いて自動的に、クライ
アント12からクライアント種類18のデータを送信しても
らい、サーバ用コンピュータ7が受信する。選択プログ
ラム(Selection)28は、前記クライアント種類18のデー
タを判別して、プログラムとクライアント種類とに適合
するクライアントプログラム14、代理プログラム15及び
個別オブジェクト間通信インタフェース2の組合わせを
選択し、自動的にクライアント12へのダウンロードを開
始する。ダウンロードを終えて、クライアントプログラ
ム14が利用可能になると、以後は分散オブジェクトシス
テムとしてサーバプログラム3及びクライアントプログ
ラム14が一体に機能しはじめる。
【0034】上述したように、個別オブジェクト間通信
インタフェースは、クライアント種類毎に機能を最適化
し、容量を低減しているので、従来同様の分散オブジェ
クトシステムとしての利用には問題がなく、個別オブジ
ェクト間通信インタフェースが占有するメモリ容量を低
減できる。これは、携帯電話のようなメモリの容量に制
約のあるクライアントにおける分散オブジェクトシステ
ムの利用可能性を高めることになる。また、制約の少な
いクライアント(パソコン等)であっても、より効率的な
分散オブジェクトシステムの利用ができるようになる。
【0035】
【発明の効果】本発明は、クライアント種類毎に最適
化、容量制限を果たした個別オブジェクト間通信インタ
ーフェースの容易かつ効率的な提供を実現し、この個別
オブジェクト間通信インタフェースを用いた分散オブジ
ェクトシステムの利用を可能にする効果を有する。
【0036】生成プログラムは、個別オブジェクト間通
信インタフェースをサーバプログラムから自動的に生成
する効果を有する。しかも、生成プログラムは、クライ
アント種類毎に応じたサブプログラムをメインプログラ
ムに付加して構成できるため、今後現れる新しいクライ
アント種類にも柔軟に対応できる。また、雛形プログラ
ム部品及び単位プログラム部品を組み合わせる生成方式
は、クライアント種類だけでなく、プログラム自体の仕
様変更に対応しやすい柔軟な生成プログラムの提供を可
能にする。
【0037】こうして、クライアント種類毎に最適化又
は容量制限を果たした個別オブジェクト間通信インタフ
ェースを用いることで、クライアント種類を問うことな
く、分散オブジェクトシステムにおける均等なサービス
の提供を実現する効果がある。本発明が最も有効なクラ
イアントは制約の多い携帯電話であるが、クライアント
種類毎に最適化、容量制限を果たした個別オブジェクト
間通信インターフェースは、そのほかのクライアントで
も好ましい、例えば接続要求後のダウンロード時間を短
縮する効果をもたらす利点がある。
【図面の簡単な説明】
【図1】本発明を用いた分散オブジェクトシステムの構
築例を示すシステム構成図である。
【図2】分散オブジェクトシステムの作動説明図であ
る。
【図3】個別オブジェクト間通信インタフェース生成プ
ログラムの基本構成図である。
【図4】生成プログラムの具体的構成図である。
【図5】生成フローチャート図である。
【図6】クライアント主導で個別オブジェクト間通信イ
ンタフェースを選択するシステム構成図である。
【図7】サーバ主導で個別オブジェクト間通信インタフ
ェースを選択するシステム構成図である。
【符号の説明】
1 個別オブジェクト間通信インタフェース生成プログ
ラム 2 個別オブジェクト間通信インタフェース(Client IO
CI) 3 サーバプログラム(Server Object) 4 透過プログラム(Skelton) 5 共用オブジェクト間通信インタフェース(Server IO
CI) 6 サーバ 12 クライアント(インターネット利用可能な携帯電話) 14 クライアントプログラム(Client Object) 15 代理プログラム(Ploxy) 16 プログラム生成用コンピュータ 17 サーバプログラム(Sourse Code) 18 クライアント種類(Client Option)
───────────────────────────────────────────────────── フロントページの続き (71)出願人 301001018 シックス株式会社 岡山県岡山市天瀬4番11号 (72)発明者 大西 荘一 岡山県赤磐郡山陽町桜が丘西8−17−3 (72)発明者 西本 圭佑 岡山県岡山市三浜町2丁目14番23号 (72)発明者 平 聡輔 岡山県岡山市今岡299−31 (72)発明者 高井 幸宏 静岡県引佐郡引佐町横尾323−1 (72)発明者 谷村 俊彦 香川県高松市桜町2−7−8 (72)発明者 木村 映善 愛媛県伊予市米湊266−1 Fターム(参考) 5B045 GG01 GG06 5B076 DD04 DF08 5B098 GA01 GC16

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 分散オブジェクトシステムにおけるサー
    バの共用オブジェクト間通信インタフェースとメッセー
    ジを送受信するクライアントの個別オブジェクト間通信
    インタフェースを生成するプログラムであって、プログ
    ラム生成用コンピュータで実行し、該プログラム生成用
    コンピュータに入力したサーバプログラムを解析して該
    サーバプログラムの作動に必要な処理機能を特定し、該
    プログラム生成用コンピュータに入力したクライアント
    種類を条件として、前記処理機能に応じたクライアント
    種類毎に異なる容量又は機能の個別オブジェクト間通信
    インタフェースを生成するオブジェクト間通信インタフ
    ェース生成プログラム。
  2. 【請求項2】 個別オブジェクト間通信インタフェース
    と共に、サーバプログラムと共用オブジェクト間通信イ
    ンタフェースとを仲介をする透過プログラム、及び該サ
    ーバプログラムに対するクライアントプログラムと個別
    オブジェクト間通信インタフェースとを仲介をする代理
    プログラムとを同時に生成する請求項1記載のオブジェ
    クト間通信インタフェース生成プログラム。
  3. 【請求項3】 個別オブジェクト間通信インタフェース
    は、共用オブジェクト間通信インタフェースからサーバ
    プログラムの作動に必要な処理機能を除く残余機能を除
    外して生成する請求項1記載のオブジェクト間通信イン
    タフェース生成プログラム。
  4. 【請求項4】 個別オブジェクト間通信インタフェース
    は、クライアント種類毎に異なる例外処理機能のみを追
    加して生成する請求項1記載のオブジェクト間通信イン
    タフェース生成プログラム。
  5. 【請求項5】 個別オブジェクト間通信インタフェース
    は、クライアント種類毎に異なる通信処理機能のみを追
    加して生成する請求項1記載のオブジェクト間通信イン
    タフェース生成プログラム。
  6. 【請求項6】 クライアント種類毎に異なるサーバプロ
    グラムの解析及び個別オブジェクト間通信インタフェー
    スを生成するサブプログラムと、複数あるサブプログラ
    ムをクライアント種類に従って選択して実行させるメイ
    ンプログラムとから構成し、サブプログラムはクライア
    ント種類毎の個別オブジェクト間通信インタフェースを
    構成するプログラム単位と、該プログラム単位の関連情
    報と、サーバプログラムをクライアント種類毎に解析
    し、該クライアント種類毎の処理機能を特定して該処理
    機能をメインプログラムに保存する解析プログラムと、
    メインプログラムに保存する解析結果の処理機能を参照
    してプログラム単位及び関連情報を選択して組み合わ
    せ、個別オブジェクト間通信インタフェースを生成する
    組立プログラムとからなる請求項1記載のオブジェクト
    間通信インタフェース生成プログラム。
  7. 【請求項7】 プログラム単位は、クライアント種類毎
    の個別オブジェクト間通信インタフェースの基本型を定
    義した雛形プログラム単位と、クライアント種類毎の個
    別オブジェクト間通信インタフェースの単位処理を定義
    した部品プログラム単位とから、関連情報は雛形プログ
    ラム単位の組合わせ、該雛形プログラム単位に対する部
    品プログラム単位の組合わせ又は各プログラム単位の関
    連付けを定義した生成特定情報とからそれぞれなる請求
    項4記載のオブジェクト間通信インタフェース生成プロ
    グラム。
  8. 【請求項8】 サブプログラムは、メインプログラムに
    対して追加又は削除自在である請求項4記載のオブジェ
    クト間通信インタフェース生成プログラム。
  9. 【請求項9】 サーバ及びクライアントがデータ又は処
    理要求等のメッセージをやりとりする分散オブジェクト
    システムにおいて、サーバはサーバプログラムと、透過
    プログラムと、共用オブジェクト間通信インタフェース
    と、クライアントプログラムと、代理プログラムと、ク
    ライアント種類毎に異なる容量又は機能の個別オブジェ
    クト間通信インタフェースとを有してなり、該サーバに
    接続要求してきたクライアントに対し、クライアントプ
    ログラムと、代理プログラムと、該クライアント種類毎
    の個別オブジェクト間通信インタフェースとを該サーバ
    がクライアントに送信し、接続確立した該サーバ及びク
    ライアントの間で、サーバプログラムは透過プログラム
    を通じて共用オブジェクト間通信インタフェースからク
    ライアントへ、クライアントプログラムは代理プログラ
    ムを通じて個別オブジェクト間通信インタフェースから
    サーバへ、それぞれデータ又は処理要求等のメッセージ
    をやりとりしてなる分散オブジェクトシステム。
  10. 【請求項10】 サーバにはクライアントが使用を希望す
    るサーバプログラム及びクライアントプログラムの組合
    わせを該クライアント種類毎に指定する選択データベー
    スを有してなり、サーバはクライアントの接続要求に際
    して該クライアントに前記選択データベースから組合わ
    せを選択してもらい、該クライアントの選択に基づいて
    クライアントへ送信するクライアントプログラム、代理
    プログラム及び個別オブジェクト間通信インタフェース
    を特定する請求項9記載の分散オブジェクトシステム。
  11. 【請求項11】 サーバにはクライアントが使用を希望す
    るサーバプログラム及びクライアントプログラムの組合
    わせを該クライアント種類毎に指定する選択データベー
    スと、クライアントから送信されてくるクライアント種
    類のデータから前記選択データベースの組合わせを自動
    的に選択する選択プログラムとを有してなり、サーバは
    クライアントの接続要求に際して該クライアントよりク
    ライアント種類のデータを送信してもらい、該クライア
    ント種類のデータに基づいて選択プログラムが選択デー
    タベースから組合わせを自動的に選択し、該選択に従っ
    てクライアントへ送信するクライアントプログラム、代
    理プログラム及び個別オブジェクト間通信インタフェー
    スを特定する請求項9記載の分散オブジェクトシステ
    ム。
JP2001135046A 2001-05-02 2001-05-02 オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム Pending JP2002328806A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001135046A JP2002328806A (ja) 2001-05-02 2001-05-02 オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001135046A JP2002328806A (ja) 2001-05-02 2001-05-02 オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム

Publications (1)

Publication Number Publication Date
JP2002328806A true JP2002328806A (ja) 2002-11-15

Family

ID=18982596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001135046A Pending JP2002328806A (ja) 2001-05-02 2001-05-02 オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム

Country Status (1)

Country Link
JP (1) JP2002328806A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013520086A (ja) * 2010-02-17 2013-05-30 クアルコム,インコーポレイテッド ハンドセット上で実行されるマルチメディアアプリケーションと、独立した被接続コンピューティングデバイスとのインターフェース

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013520086A (ja) * 2010-02-17 2013-05-30 クアルコム,インコーポレイテッド ハンドセット上で実行されるマルチメディアアプリケーションと、独立した被接続コンピューティングデバイスとのインターフェース
KR101521338B1 (ko) * 2010-02-17 2015-05-18 퀄컴 인코포레이티드 독립적인, 접속된 컴퓨팅 디바이스와 핸드셋 상에서 실행되는 멀티미디어 애플리케이션의 인터페이싱
US9122545B2 (en) 2010-02-17 2015-09-01 Qualcomm Incorporated Interfacing a multimedia application being executed on a handset with an independent, connected computing device

Similar Documents

Publication Publication Date Title
EP0810524B1 (en) Apparatus and method for processing servlets
EP0726004B1 (en) Object-oriented rule-based protocol system
US7426543B2 (en) Accessing data stored in multiple locations
US7949999B1 (en) Providing support for multiple interface access to software services
US5594921A (en) Authentication of users with dynamically configurable protocol stack
Adacal et al. Mobile web services: a new agent-based framework
US9015651B2 (en) Gateway data distribution engine
US20020069263A1 (en) Wireless java technology
US20040215672A1 (en) Accessing data based on user identity
Merz et al. Using mobile agents to support interorganizational workflow management
JP2005505055A (ja) モバイルウェブクライアントに対する方法、装置及びシステム
US7506069B2 (en) Accessing data in a computer network
JP2007310891A (ja) コンピュータソフトウェア開発の方法およびシステム
WO2002080014A1 (en) Assembling concurrently-generated personalized web pages
JPH07281974A (ja) ネットワーク内のコンピュータ間でデータを交換するための通信システム
JP2002132739A (ja) スタブ検索ローディングシステム及び方法、サーバ装置、クライアント装置並びにコンピュータ可読記録媒体
CN113055492A (zh) 服务灰度链路的控制方法、装置、计算机设备和存储介质
EP0856790B1 (en) Client-server network computing system and its method
JP2004246747A (ja) 既存サービスのラッピング方法および装置
CN112115056A (zh) 一种项目部署方法和装置、服务器、存储介质
US7831905B1 (en) Method and system for creating and providing web-based documents to information devices
EP1031922A2 (en) Method and system, and storage medium for installing an application program
JP2002328806A (ja) オブジェクト間通信インタフェース生成プログラム及び分散オブジェクトシステム
JP2002351677A (ja) アプリケーション・プログラム実行順序制御システム
JP2003076563A (ja) 分散オブジェクトミドルウェア連携方法及びプログラムを記録した記録媒体並びにプログラム