JP2006244472A - Mapi準拠のメールアプリケーションを用いたウェブサービス処理 - Google Patents

Mapi準拠のメールアプリケーションを用いたウェブサービス処理 Download PDF

Info

Publication number
JP2006244472A
JP2006244472A JP2006024864A JP2006024864A JP2006244472A JP 2006244472 A JP2006244472 A JP 2006244472A JP 2006024864 A JP2006024864 A JP 2006024864A JP 2006024864 A JP2006024864 A JP 2006024864A JP 2006244472 A JP2006244472 A JP 2006244472A
Authority
JP
Japan
Prior art keywords
message
web service
mail
application
mapi
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
JP2006024864A
Other languages
English (en)
Inventor
Simon M Guest
エム.ゲスト サイモン
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006244472A publication Critical patent/JP2006244472A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/60Business processes related to postal services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】非同期通信を拡張し、オフラインもしくは非接続期間をサポートし、またウェブサービス環境中でメッセージを交換するために既存のインフラストラクチャを利用するウェブベースのサービスインフラストラクチャを提供する。
【解決手段】本発明は、メールトランスポートを介してウェブサービスを提供する。具体的には、本発明は、オフライン通信および延長されたサービス要求処理時間をサポートするため、MAPIメールアプリケーションを使用することによって、このようなメッセージ交換のために追加インフラストラクチャを形成することなく、ウェブサービスメッセージを送信する。カスタムレイヤトランスポートは、ウェブサービスメッセージがメールトランスポートを介して送信されるべきであることを識別し、MAPIアプリケーションを用いてメールメッセージを生成し、メールメッセージ内にウェブサービスメッセージおよび他の識別子を含むように構成される。
【選択図】図1A

Description

本発明は、一般に、ウェブサービスおよび他の分散システム中で使用されるバインディング機構に関する。より詳細には、本発明は、オフライン通信をサポートし、かつサービス要求の処理時間を延長するために、MAPI(Messaging Application Program Interface)準拠メールアプリケーションを用いることによって、このようなメッセージ交換のための追加のインフラストラクチャを形成することなしに、メールメッセージトランスポートを介するウェブサービスを提供する。
コンピュータシステムおよびそれに関連する技術は、社会の多くの側面に影響を与えている。実際に、コンピュータシステムの情報処理能力は、人々が生活し働く様式を変化させている。現在、コンピュータシステムは、コンピュータシステムの出現前までは通常手作業で行われていた多くのタスク(例えば、ワードプロセッシング、スケジューリング、データベース管理など)を実行している。さらに最近では、コンピュータシステムを互いに結合してコンピュータネットワークを形成するようにして、電子的にデータを共用するためにそのネットワークを介して通信することができる。ウェブサービスは、コンピュータ間のこのような通信を向上させる原動力であり、ソフトウェアを構築し使用する方法を一変させている。
ウェブサービスは、アプリケーションにデータの共用を可能にし、そのアプリケーションがいかにして構築されたか、どのオペレーティングシステムまたはプラットフォーム上で動作するか、またそれにアクセスするためにどの装置を使用するかに関係なく他のアプリケーションから機能をより強力に呼び出せるようにする。ウェブサービスは、SOAP(Simple Open Access Protocol)、XML(eXtensible Markup Language)、UDDI(Universal Description Discovery Integration)、WSDL(Web Service Description Language)などを含む業界標準プロトコルによりインターネットを介して呼び出される。ウェブサービスは、互いに独立したままであるが、特定のタスクを実行する共同作業グループに対して緩く(loosely)リンクすることができる。
ウェブサービスネットワーク上の電子通信は、サーバコンピュータシステム(以下、「サーバ」、「サービス」または「ウェブサービス」と呼ぶ)におけるネットワークサービス(例えば、ウェブサービス)へのアクセスを要求するクライアントコンピュータシステム(以下、「クライアント」と呼ぶ)を含むことが多い。したがって、クライアントは、そのシステムリソースへの特定のアクセスを求める要求をそのサービスに送信し、そのクライアントが許可され確認された場合、そのサービスは、所望の情報を提供する応答メッセージで応答する。クライアントとサービスの間の他のメッセージングパターンも利用可能であり、簡単な単一メッセージ、ならびにより高級なマルチメッセージ交換、例えば、通知、送信請求応答、パブリッシュ/サブスクライブパターン、ポーリング、キックプッシュ(kick−push)、キューイングなどを含むことは当然である。さらに、この種の通信は、分散システム(例えば、ウェブサービス)のためのコントラクト(contract)中の、クライアントとサービスの双方によって決定される様々の要件および機能によって支配される。
コントラクトは、サービス(またはクライアント)の挙動の可視的な側面の表現である。コントラクトは、マシン可読言語および人間の言語を混合したものによって表される。マシン可読言語は、明らかに精度を高めることが可能であること以外に、部分的なサービス実装の構築、サービス配信の自動化、交換されるメッセージの監査/妥当性検査、サービスの管理、および多くの他のネットワークに関係する機能を実施できるようにする。しかし、マシン可読言語の表現力の限界のため、人間の言語が、主として、メッセージおよびメッセージ交換パターンの意味論を記述するために、コントラクトの重要な構成要素として使用されている。
ネットワークプロトコル記述言語(例えば、WSDL)は、共通または標準の言語でコントラクト(例えば、ウェブサービスコントラクト)を記述するための全体のラッパ(wrapper)または仕様を提供する。このような仕様を用いると、開発者および開発者ツールはコントラクトを作成しかつ解釈することが容易になる。そのネットワークプロトコル記述言語(以下、「NPDL」と呼ぶ)は、豊富なツーリングスイート(suites)を有しており、それがよく使用される主な理由である。最近まで、それらのNPDLは、メッセージをどのようにカプセル化またはフォーマットするか(例えば、SOAPエンベロープ)、またサービスとメッセージ交換するためにどのトランスポートを使用するか(例えば、HTTP(Hyper Text Transport Protocol))を記述する単一のトランスポートまたはバインディング機構とコントラクトを結んでいた。
現在、ウェブサービスの実装においては、一部にはそのユビキタスな性質のため、主要なトランスポートとしてHTTPが使用される。HTTPがウェブサービスのためのトランスポートとしての人気が高まっているが、HTTPはまた、よく知られているいくつかの制限を有する。例えば、HTTPは要求/応答型のトランスポートであり、同期型トランザクションをサポートする。しかし、この種のメッセージ交換パターンは、非同期通信に対する課題を提示する。例えば、ウェブサービスクライアントは、ウェブサービスから何らかの応答を取得するために接続をキープアライブ(keep−alive)する必要がある。それは、更新のため、クライアントがコンスタントにサーバにポーリングする機構を作成することなしには、HTTPを用いた長時間トランザクション(例えば、処理をするのに数日かかる抵当取引)の実施を困難にする。このようなポーリングは、貴重なリソースを不必要に使用することになる。
HTTPに関する他の問題は、それが接続ベースのプロトコルであることである。したがって、メッセージ交換パターンにおける各端末(すなわち、クライアントとサービス)は、HTTP要求/応答を完了するために常時接続され、アクティブでなくてはならない。それができそうもない状況(例えば、何らかの遠隔位置にあるウェブサービスに接続しようとするクライアント)の場合、メッセージは送達不可能と見なされ、HTTPプロトコルはメッセージのキャッシュおよび記憶をサポートしないので、システムは障害を起こすことになる。
さらに、ウェブサービス環境中においてHTTPを用いることに関する他の問題は、HTTPを使用するには追加のインフラストラクチャを必要とすることである。例えば、ウェブサイトをホストするには、HTTPを使用するウェブサービスはインフラストラクチャおよびセットアップを必要とする。ホストされたウェブサービスをサポートするために、各コンピューティング装置は、コンピュータごとにウェブサーバまたは同等の機能のインストールを求める着信HTTP要求を受けることができる必要がある。それは、新しい管理およびセキュリティ上の問題を生ずることになる。その結果、例えば一時的なコンピュータユーザ、あるいはウェブサーバを構成することに習熟していないユーザなど、いくつかの環境において問題となり得る。
上記の制限があることにより、ウェブサービスをサポートできる代替のトランスポートの実装およびアイデアがすでに生まれている。したがって、さまざまなウェブサービスエンジンを用いて、開発者はいくつかのカプセル化およびトランスポートプロトコルを含めるためのバインディングまたはバインディング機構を記述または拡張することができる。例えば、開発者は、1つまたは複数の以下のものを含むようにトランスポートをカスタム化することができる。すなわち、FTP(File Transfer Protocol)、SMTP(Simple Message Transfer Protocol)、TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)などである。これらのバインディング拡張により、他のトランスポートの有利な機能を利用することができるが、それは、HTTPの上記欠点に対処するものではない。
例えば、SMTPバインディングが使用される場合、ウェブサービスメッセージをメッセージの本文が含んでいる標準のメールメッセージが生成され、次いで、それは有線を介して他のエンドポイントに転送される。SMTPトランスポートを使用することは、HTTPに対して有利な機能を有することができるが、このようにSMTPを使用することは、なお、エンドポイントがそれぞれ、SMTPトランスポートを介して接続されることが必要となる。さらに、メールメッセージ内におけるウェブサービスメッセージの生成およびカプセル化が追加のインフラストラクチャを必要とし、やはり上記のように、管理問題およびセキュリティ上の問題を生ずることになる。したがって、非同期通信を拡張し、オフラインもしくは非接続期間をサポートし、またウェブサービス環境中でメッセージを交換するために、既存のインフラストラクチャを利用するウェブベースのサービスインフラストラクチャが求められている。
現在のウェブサービスバインディング機構の上記の欠陥および欠点は、本発明の例示的な諸実施形態によって克服される。例えば、本発明は、オフライン通信をサポートし、かつサービス要求の処理時間を延長するために、MAPI(Messaging Application Program Interface)準拠のメールアプリケーションを利用することによって、このようなメッセージ交換のために追加のインフラストラクチャを形成することなしに、メールトランスポートを介したウェブサービスを提供する。さらに、本発明はオフライン通信をサポートし、かつNPDLデータ構造を生成するために、MAPI準拠メールアプリケーションを利用することによって、ウェブサービスアプリケーションにアクセスすることなしに、メールトランスポートを介したウェブサービスアプリケーションのためのNPDL(Network Protocol Description Language)データ構造の配布を提供する。
例えば、諸実施形態は、メールメッセージトランスポートを介して通信するクライアントとウェブサービスの間でのメッセージ交換パターンの一部であるウェブサービスメッセージを送信するために、MAPI準拠のメールアプリケーションを使用していることを識別するアドレッシング方式(scheme)を含むウェブサービスメッセージを受信することを含む。アドレッシング方式に含まれるエンドポイントメーリングアドレスは、次いで、対応するエンドポイントにウェブサービスメッセージを送信するために識別される。その後、MAPI準拠のメールアプリケーションを使用するメールメッセージが生成される。メールメッセージは、エンドポイントメーリングアドレスと、ウェブサービスメッセージと、ウェブサービスおよびそのウェブサービスメッセージに対するメッセージ交換タイプ(例えば、要求、応答など)を識別するための識別子とを含む。その後引き続き、メールメッセージトランスポートを介してエンドポイントに後で送達するために、メールメッセージは、MAPI準拠メールアプリケーションの発信メールボックスに送られる。
他の例示的な実施形態では、メールメッセージは、メールメッセージトランスポートを介して受信される。メッセージは、エンドポイントのウェブサービスアプリケーションに対応するMAPI準拠メールアプリケーションの着信メールボックスにおいて受信される。その後、メールメッセージは、MAPI準拠メールアプリケーションに対応するエンドポイントメールアドレスと、クライアントとウェブサービスの間でのメッセージ交換パターンの一部であるウェブサービスメッセージと、ウェブサービスおよびそのウェブサービスメッセージに対するメッセージ交換タイプを識別するための識別子とを含んでいるものとして識別される。ウェブサービスおよびそのウェブサービスメッセージに対するメッセージ交換タイプに基づいて、ウェブサービスメッセージは、処理のためエンドポイントウェブサービスアプリケーションに送信される。
他の例示的な実施形態は、メールトランスポートを介してNPDL(例えば、WSDLデータ構造)を配布することを含む。その例示的な実施形態は、ウェブサービスアプリケーションに関連するMAPI準拠メールアプリケーションの着信メールボックスにおいて、エンドポイントからのメールメッセージを受信することを含む。次いで、メールメッセージは、エンドポイントアプリケーションが、ウェブサービスアプリケーションとメッセージを交換するときに準拠する1つまたは複数のコントラクトを記述するための仕様であるNPDLデータ構造を要求しているものとして識別される。その後、NPDLデータ構造は、ウェブサービスアプリケーションにアクセスすることなく、自動的に生成される。次いで、NPDLデータ構造はエンドポイントに送信される。
本発明のさらなる機能および利点は、以下の説明の中で述べられているが、一部はその説明から自明のものであり、また本発明の実施によって理解することもできる。本発明の機能および利点は、添付された特許請求の範囲で特に示された手段および組合せにより実現され取得することができる。本発明のそれらのおよび他の機能は、以下の説明および添付の特許請求の範囲から十分明白になろうが、あるいは後に述べる本発明の実施によって理解することができる。
本発明の上記のおよび他の利点および機能を獲得できる方法を記述するために、上記に簡単に述べた本発明のより詳細な説明を、添付図面で示される本発明の特定の諸実施形態を参照しながら示すものとする。それらの図面は、本発明の典型的な諸実施形態を示しているに過ぎない。したがって、その範囲を限定するものと見なすべきではないことを理解した上で、添付図面を用いてさらなる特有な部分および詳細と共に本発明を記述し説明する。
本発明は、MAPI準拠メールアプリケーションを使用しメールトランスポートを介して、クライアントとウェブサービスの間でウェブサービスメッセージを交換するための方法、システム、およびコンピュータプログラム製品に及ぶ。さらに、本発明は、MAPI準拠メールアプリケーションを介して要求側エンドポイントにNPDLデータ構造を送ることを含む。本発明の諸実施形態は、様々なコンピュータハードウェアを含む専用または汎用コンピュータを含むことができ、それを以下でより詳細に説明する。
本発明は、メールトランスポートを介してウェブサービスのためにメッセージを交換することを目的として、MAPI(Messaging Application Program Interface)準拠メールアプリケーションを利用することを含む。MAPI準拠メールアプリケーションの諸実施例は、Microsoft Outlook(登録商標)、Microsoft Outlook Exchange(登録商標)、Microsoft Exchange(登録商標)、Qualcomm(登録商標)のEudora(登録商標)、およびメール交換サーバまたはメールストアと通信できる他の同様な電子メールアプリケーションを含む。他の例示的な実施形態はまた、例えば、WSDL(Web Service Description Language)文書などのNPDL(Network Protocol Description Language)データ構造を要求するためにこれらのMAPI準拠メールアプリケーションを用いることを含み、それによって、クライアントおよびサービス開発者は、対応するウェブサービスアプリケーションにアクセスする必要なく、設計時にそれらの文書にアクセスできるようになる。
上記のMAPI準拠メールアプリケーションは、途方もなく広く行きわたった技術であり、世界中の数多くの人々が、日々メッセージを交換するためにこれらのアプリケーションを使用している。アプリケーション間で交換されるウェブサービスメッセージのためのトランスポートとしてこのようなMAPI準拠メールアプリケーションを使用する機能は、信じられないほど強力になる。例えば、前にHTTPについて概略を示した課題を考えると、MAPI準拠メールアプリケーションを使用することがなぜ従来技術に対してはるかに利点を有しているのか理解することができよう。具体的には、このようなMAPI準拠メールアプリケーションは、HTTPおよび他の同様のトランスポートに対してはるかに非同期のモデルを提供する。MAPI準拠メールアプリケーションのユーザは、メッセージを送信し、次いで、数分後、数時間後、あるいは数日後にもなる返事を待つことができる。したがって、それがウェブサービスに適用された場合、MAPIメールアプリケーションは、ウェブサービス要求を送信し、次いで、数分後、数時間後、または数日後の応答を受信するのに使用することができる。この非同期形式の対話は、HTTPまたは他のトランスポートを使用して達成することは困難であり、いくつかの場合は不可能である。
さらに、MAPIメールアプリケーションは、オフライン環境におけるメールメッセージの構築をサポートする。例えば、ユーザが、メール交換サーバへのアクセスもまたは接続性もない離れた場所にいた場合、ユーザは、なお、MAPI準拠メールアプリケーションを用いて、メッセージを作成することが可能であり、このようなメッセージは、このようなアプリケーションの発信メールボックスに保存される。次いで、それらのメッセージは、ユーザが次にそのメール交換サーバに接続した時に送信することができる。HTTPおよび他の同様のトランスポートプロトコルのこのような欠点を克服するために、MAPI準拠メールアプリケーションと共にウェブサービスを使用できるモデルに対して、同様のプロセスが適用される。具体的には、本発明により、ウェブサービスメッセージ(例えば、要求または応答)を構成できるアプリケーションは、MAPIメールアプリケーションの発信メールボックス内に普通のメールメッセージとしてウェブサービスメッセージを記憶できるようになる。したがって、本発明は、ウェブサービスメッセージのオフライン処理をサポートし、ユーザがそのネットワークに次に接続したとき、所望のエンドポイントにメッセージを送信することができる。
本モデルの他の利点は、追加のインフラストラクチャを必要としないことである。前に述べたように、着信HTTP要求をサポートすることは、通常、管理およびセキュリティ問題の原因となるウェブサーバのインストールを必要とする。本明細書に例示の諸実施形態によるMAPIメールアプリケーションを使用すると、必要なものはエンドポイントのためのメールボックスだけである。着信するメールウェブサービスメッセージを、何らかの追加のソフトウェアまたはインストールの経費も必要とせずに、そのメールボックスに送信することができる。
本発明はまた、ウェブサービス環境中においてエンドポイント間でメッセージを交換するためにSMTPトランスポートを使用する他の現行モデルに対して、いくつかの有利な機能を有する。例えば、このようなアプリケーションは、プロトコルまたはトランスポートではなく、MAPI準拠メールアプリケーションに特有の発信メールボックスの使用をサポートするので、例示的な諸実施形態によるMAPIメールアプリケーションを使用することは、オフラインで動作する能力を提供する。さらに、MAPI準拠メールアプリケーションの使用は、コンフィギュレーションの複製を含まない。例えば、ネイティブのもしくは現在のSMTPチャネルを使用する場合、ウェブサービスクライアントおよびサービスは、尚、電子メールアカウントのいくつかの詳細を知る必要がある。それは、例えば、SMTPサーバの位置、POP3サーバのロケーション、ユーザ名、およびパスワードを含む。本発明によるMAPIメールアプリケーションを用いると、その情報のすべてがアプリケーション内にすでに構成されており、したがって、複製をする必要はない。
さらに、本発明の他の有利な機能は、分散環境中においてメッセージを交換するのに使用されるトランスポートを拡張することを含む。例えば、多くのMAPIメールアプリケーションは、メッセージを、SMTPのほかに他のトランスポート上で送信することができる。例えば、これらのMAPIメールアプリケーションは、Hotmail、X.25、DEC ALL−IN−1などを用いてメッセージ送信するように拡張することができる。上記で識別された利点のいくつかを前提として、これらの所望の結果を得るため、どのようにMAPIメールアプリケーションを使用するかに関するより詳細な説明を、以下に示す。
図1Aは、例示的な実施形態によるクライアントとサービスの間でメッセージを交換するためにMAPIメールアプリケーションを利用する分散システムを示す。図1Aならびに本明細書に記載の他の図に関する以下の説明では、クライアント、サーバ、またはそれに関連付けられたアプリケーションに対するメールアドレスについて参照が時々行われる。理解されるように、このようなメーリングアドレスは、普通、何らかの特定のマシンまたはアプリケーションではなく、個人または会社にバインドされている。本明細書に記載の「メールアドレス」は、通常、クライアントまたはサービスの個人ユーザにバインドされるが、適用可能である場合、アプリケーションまたはマシンに拡張することも可能である。したがって、本明細書で使用されるどの特定のメーリングアドレスも、個人、会社、アプリケーション、またはマシンにバインドされるものと広く解釈されるべきである。
図1Aで示すように、クライアント105とサーバ150は共に、MAPIメールアプリケーション110、155のインスタンスがそれぞれインストールされ、あるいは、それぞれを含んでいる。図を簡略化するために、MAPIメールアプリケーション110、155のインスタンスを共に、同じメール交換サーバ145を使用して図示されていることに留意されたい。しかし、分散システム100全体で使用される他のメール交換サーバ145とすることも可能である。本発明を用いる唯一の必要条件は、クライアント105上のMAPIメールアプリケーション110のインスタンスが、サーバ150上のMAPIメールアプリケーション155のインスタンスとメールメッセージを交換(送信および受信)できる能力を有することである。
図1の実施例では、クライアント105は、ウェブサービス165と通話するように構成されたカスタムアプリケーションであるウェブサービスアプリケーション130を動作させる。同様に、サーバ150は、ウェブサービス165をホストし、動作させる。しかし、このアプリケーションの場合、用語「ウェブサービスアプリケーション」は、その他の形で明示的に特定されない限り、クライアントのウェブサービスアプリケーション130と、サーバ側ウェブサービス165を共に含むように広く解釈されるべきであることに留意されたい。さらに、クライアントのウェブサービスアプリケーション130と、ウェブサービス165は共に、クライアント側のカスタムレイヤ化トランスポート115およびサーバ側のカスタムレイヤ化トランスポート160を用いて、それぞれ、MAPIアプリケーション110、155にバインドされる。以下により詳細に述べるように、これらのレイヤ化トランスポート115、160は共に、ウェブサービスアプリケーション130、165と、それに対応するMAPIメールアプリケーション110、155との間でメッセージを通信するために使用されるいくつかのレイヤ化されたインターフェースを有することができる。
以下で、クライアント105とサーバ150の間における要求/応答メッセージ交換パターンの簡単な概観を示す。しかし、他のメッセージ交換パターンも本発明に利用可能であることに留意されたい。したがって、図1Aおよび他の図の例示的な諸実施形態の説明における要求/応答メッセージ交換パターンの使用は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限し、あるいはその他の方法で狭くすることを意図するものではない。
この実施例では、クライアントのウェブサービスアプリケーション130は、サーバ150のMAPIメールアプリケーション155によって使用されるメールアドレスのロケーションを指定する(以下でより詳細に説明するように)カスタムアドレッシング方式を含むウェブサービス要求120を作成する。クライアント側レイヤトランスポート115を用いて、ウェブサービス要求メッセージ120を、1つまたは複数の直接API(Application Program Interfaces)を介してMAPIメールアプリケーション110に転送することができ、それを以下で述べる。MAPIメールアプリケーション110は、その要求120に対して発信メールメッセージ135を作成し、その発信メールメッセージ135を、MAPIメールアプリケーション110の発信メールボックス(図示せず)に入れる。発信メールメッセージ135は、送信されるかあるいは発信ボックスに保存されるが、発信ボックス中にメールメッセージ135を入れる他のプロセスもまた、本発明に利用可能であることに留意されたい。例えば、メールメッセージ135を発信メールボックス内で直接作成することもできる。したがって、メールメッセージ135(ならびにここに記載の他のメールメッセージ)を送信しまたは保存することは、発信メールボックス内にメールメッセージを置き、または作成する任意の周知の方法を含むように広く解釈すべきである。
いずれにしても、発信メールメッセージは、ウェブサービス165のMAPIメールアプリケーション155にバインドされるメールアドレスと、ウェブサービス要求120メッセージと、ウェブサービス165およびそのウェブサービスメッセージ(すなわち、この実施例では要求120)に対するメール交換タイプを識別するための識別子とを含むことができる。MAPIメールアプリケーション110が適切なメール交換サーバ145に接続されると、発信メールメッセージ135は、着信メールメッセージ135としてサーバ150のMAPIメールアプリケーション155に送信される。通常、この着信メールメッセージ135は、プレーンテキストのSOAPエンベロープである。しかし、本発明は、交換されたメールメッセージに対して何らかの特定のカプセル化および/またはフォーマット化に限定するものではないことに留意されたい。したがって、メールメッセージ135、140を転送するためにSOAPエンベロープおよびプレーンテキストを使用することは、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
着信メールメッセージ135がMAPIメールアプリケーション155に到着すると、それを、MAPIメールアプリケーション155の着信メールボックスに送信することができる。着信メールメッセージ135内の識別子により、サーバ側レイヤ化トランスポート160は、着信メールメッセージ135が要求120を含んでいると識別し、それを処理のため関連するウェブサービス165に渡す。識別子は、着信メールメッセージ135が要求120を含んでいることを識別するために使用されるが、例示的な諸実施形態はまた、メッセージが要求120を含んでいることを識別するための他の方法も備えることに留意されたい。例えば、メッセージは、フィルタリングプロセスを介して識別することができるが、その場合、MAPIメールアプリケーション155は、着信メールメッセージ135中の件名(subject matter)を要求として識別することができる。このような場合、サーバ開発者によって設定された様々なルールを使用して、それを特定のフォルダへとフィルタリングすることができる。したがって、サーバ側レイヤトランスポート160は、フィルタリングされたフォルダ内のメッセージを見ると、自動的に、着信メールメッセージ135が要求120を含んでいるものと推定し、その要求120を処理のためにウェブサービス165に送信することができる。したがって、以下でより詳細に説明するように、着信メールメッセージ135内の要求120(または他のタイプのウェブサービスッセージ)を識別するための用語「識別子」の使用は、メッセージが特定のコンテンツを含んでいることを識別する他の周知の方法を含むように広く解釈されるべきである。
いずれにしても、要求メッセージ120のウェブサービス165へのハンドオフが成功すると、サーバ150のMAPIメールアプリケーション155の着信ボックスから(例えば、削除済みアイテムフォルダに移して)着信メールメッセージ135を削除することができる。それが一方向のメッセージ交換パターンであれば、処理はここで終了することになる。しかし、この実施例では、ウェブサービス165は、上記に説明した内容と同様、応答125を送信することができる。
具体的には、ウェブサービス165は、応答125を構成し、サーバ側レイヤ化トランスポート160を使用してその応答をMAPIメールアプリケーション155に渡す。次いで、MAPIメールアプリケーション155は、クライアント105のメーリングアドレス(またはその他の形でクライアントに対応するアドレス)と、ウェブサービス応答125と、ウェブサービス165およびメール交換タイプ、すなわち応答125を識別するための識別子とを含む発信メールメッセージ140を構成する。発信メールメッセージ140は、次いで、サーバ150上の発信メールボックス(図示せず)に保存され、それにサーバ150が接続されたときメール交換サーバ145に送信される。クライアントがそのメール交換サーバ145に接続されると、発信メールメッセージ140は着信メールメッセージ140として、クライアント105側のMAPIメールアプリケーション110のインスタンスに送信される。次いで、クライアント側レイヤ化トランスポート115は、(サーバ150に関して前に説明したプロセスと同様に)着信メールメッセージ140が応答125を含んでいることを認識し、処理のためそれをクライアントウェブサービスアプリケーション130に渡す。
図2は、ウェブサービス165またはウェブサービスアプリケーション130をその対応するMAPIメールアプリケーション155、110にバインドするためのレイヤ化トランスポート115、160のより詳細な実施例を示す。図に示すように、ウェブサービスエンジン225(例えば、WSE(Web Service Enhancement))は、カスタムレイヤ化トランスポート230内の様々なカスタムAPI210、215、220を利用する。これらのAPI210、215、220は、別々のインターフェースとして図示されているが、その機能を組み合わせて単一のアプリケーションプログラミングインターフェースを形成できることに留意されたい。したがって、この別々のインターフェースおよびその機能の使用は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しまたは他の形で狭くすることを意図するものではない。
そうではあるが、図2のように、カスタムレイヤトランスポート230は、3つのエレメントからなり、カスタムトランスポートインターフェース220、マネージドMAPI機能215、および拡張MAPI機能210を含む。カスタムトランスポートレイヤ230は、ウェブサービスエンジン225トランスポートに必要な様々のインターフェースおよびプロセスを実施する。そのレイヤ220は、(以下でより詳細に説明する)アドレッシング方式、およびトランスポートのためのイベントを処理する(例えば、新しいメッセージが到着した場合のどのようにすべきかなど)プロセスと共に、使用されるチャネルの概要を示す。このカスタムトランスポートインターフェース220はまた、開発者が、メールメッセージをウェブサービスに送信し、サービスと共に働くことになるクライアントを設計し構築するためのNPDL文書を要求できるように、NPDL文書(例えば、WSDL文書)の生成をサポートする。そのプロセスおよびこのようなNPDL文書を要求するためのアドレッシング方式は、図1Bに関して以下でより詳細に説明する。
マネージドMAPI機能215レイヤは、ウェブサービス要求を、(通常、SOAPエンベロープとして知られる)ウェブサービスエンジン225形式からメールメッセージに変換するのに使用される。そのレイヤ215の機能の一部は、紛らわしいメールアドレスを正しく処理するように、アドレッシングを正しく処理することである。そのレイヤ215は、マネージド(.Net)コードで開発することができ、したがってこの名前がついている。
例えば、様々なMAPIメールアプリケーション205内のセキュリティモデルに起因して、マネージドレイヤ215が実施できないいくつかの機能があり得る。それらの機能には、存在するメールメッセージに対するメールアドレスおよび本文テキストを取得することが含まれる可能性がある。したがって、それを克服するために、例示的な諸実施形態は、MAPIメールアプリケーション105と対話するいくつかの機能を実施するように構成された拡張MAPI機能210レイヤを備える。この拡張MAPI機能210レイヤは、MAPIメールアプリケーション205の一部として装備されていても良い。
前に述べたように、本発明は、ウェブサービスメッセージ(例えば、要求、応答)を送信するためにMAPI準拠メールアプリケーションの使用していることを識別するため、カスタムアドレッシング方式を使用する。アドレッシング方式の以下の説明では、エンドポイントメーリングアドレスを識別し、かつウェブサービスメッセージがMAPI準拠メールアプリケーションを用いて交換されることを識別するために特定の形式を使用しているが、これらの機能を識別する他の周知の方法を本発明に適用可能であることにも留意されたい。したがって、以下のアドレッシング方式および本明細書に記載の他の識別子は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
例示的な諸実施形態による例示のアドレッシング方式は、典型的なURL(Uniform Resource Locators)のモデリングに類似したものである。例えば、1つのURLは、トランスポート(例えば、「http://」)、ホスト名(例えば、「www.companyname.com」)、および要求されたページ(例えば、「/biztalk/default.aspx」)を含むいくつかの異なる部分から構成される。HTTPトランスポートを介して動作するウェブサービスも、同様の規定に従う。例えば、アドレスが、http://myserver/services/service1.asmxであるとすると、トランスポートはやはり「http://」であり、「myserver」はホスト名であり、また「/services/service1.asmx」は要求されているウェブサービスを識別する。
本発明の例示的な諸実施形態は、MAPIメールアプリケーション識別子のために同様のアドレッシング方式を使用する。例えば、アドレッシング方式が、soap.mapimailapplicationname://to/sguest@company.comである場合、以下のように分離される。すなわち、「soap.mapimailapplicationname://」は使用するトランスポートを定義し、「to」はホスト名(URIネーミング規定に従うために使用されるが、通常、設計で無視される)であり、「/sguest@company.com」は(それが要求、応答か、それとも他のタイプのメッセージ交換かどうかに応じて)ウェブサービスまたはクライアントの電子メールアドレスである。
また、上記フォーマットを使用することにより、電子メールが複数の受信者にアドレス指定可能であるのと同じように、トランスポートを複数のサービスにアドレス指定することが可能になる。それは、URLに対してアドレスを付加し、例えば、soap.mapimailapplication://to/squest@company.com;account@company.comとすることにより実施することができる。それは、squest@company.comおよびaccounts@company.comの両方で動作するサービスに対する要求にアドレス指定する。
アドレッシング方式は、ウェブサービスの名前を含まなくてもよいことに留意されたい。その代わり、例示的な実施形態は、ウェブサービスの名前(または、サービスや、そのような割り当てられたコードを識別するための他の手段)およびメッセージ交換タイプを識別子中に挿入する。識別子は、例えば、メールメッセージの件名などの特有のフィールド中に挿入することができる。その識別子のフォーマットは以下のようにすることができる。すなわち、サービスを求める要求を識別する<servicename>request、前の要求に対する応答を識別する<servicename>requestresponseである。要求および/または応答を識別するために、特有のフォーマットが使用されているが、メッセージ交換パターンを識別する他の方法も本発明に利用可能であることことに留意されたい。例えば、要求(request)に対して、略語「req」を使用することができ、一方、応答(response)に対して、「resp」を使用することができる。したがって、その識別子内に現れるメッセージ交換パターンおよびフォーマットを識別するための上記実施例は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
前に説明したように、例示的な実施形態はまた、ウェブサービス165と互換性を持って通信可能な要求120を作成するために、NPDL文書(例えば、WSDL文書)を要求することおよび受信することを含む。理解されるように、このようなNPDLデータ構造は、ウェブサービスアプリケーション165とメッセージを交換するとき、クライアントウェブサービスアプリケーション130が準拠する1つまたは複数のコントラクトを記述するための仕様を与える。
図1Bは、例示的な実施形態に従って、開発者(図示せず)またはアプリケーションが、NPDLデータ構造185を要求し受信できる分散システム100を示す。図に示すように、開発者またはアプリケーションは、クライアント105上で動作しているMAPIメールアプリケーション110を使用して、ウェブサービス165に対してNPDL175を求める要求であるメールメッセージ190を作成することができる。要求190は、メール交換サーバ145を介してサーバ150のMAPIメールアプリケーション155着信メールボックスに送信される。要求190は、ウェブサービス165、およびNPDL文書を求める要求である要求のタイプを識別するための識別子を含むべきである。このような識別子は、要求190の件名または何らかの他のフィールド中に含めることができる。例えば、メッセージ190がそのウェブサービス165に対応するNPDL文書を求める要求であることを識別する、識別子「<servicename>?WSDL」を、要求メッセージ190の件名中に含めることができる。しかし、サービスおよび/またはNPDLを求める要求を識別する他の方法も本発明に適用可能であることを再度留意されたい。したがって、メッセージ190に含まれる識別子の上記識別位置および識別子の特有の形式は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
ウェブサービスエンジン170は、識別子により要求メールメッセージ190を識別し、それを使用してNPDLデータ構造175を生成することができ、次いで、それを、例えば、メールメッセージ応答185中でクライアントに送信することができる。図1BのNPDLデータ構造175はストア180から取り出されるが、他の例示的な実施形態は、ウェブサービスエンジン170に動的に直ちに(on−the−fly)それを生成できるようにすることを含むことも留意されたい。さらに、その実施例では、NPDLデータ構造が応答メールメッセージ185中で送信されるが、NPDLデータ構造は、他のトランスポートを用いて送信できることも留意されたい。例えば、要求190は、NPDLデータ構造を使用するために異なるトランスポートを指定し、かつ/またはNPDLデータ構造を送信するために異なるアドレスを指定することができる。したがって、NPDLデータ構造の作成方法、およびNPDLデータ構造185を返すためのメールメッセージの使用は、説明のために過ぎないが、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
ウェブサービスエンジン170は、ウェブサービス165にアクセスまたは要求せずに、ストア180から、または他の手段によってNPDL175を動的に生成しまたは取得することができるので、本実施形態がいくつかの有利な特徴を持っていることに留意されたい。例えば、ウェブサービス165は、このプロセス中にアクセスされないので、ウェブサービス165のリソースを他の要求を処理するために利用することができる。NPDLデータ構造を取得するためのこの例示的な実施形態はまた、MAPIメールアプリケーション110が要求190のために使用されるため、オフライン環境中でこのような要求が可能になるという利点をさらに持っている。具体的には、要求190を、まず、オフライン環境中のMAPIアプリケーション110の発信メールボックスに送信し、次いで、メール交換サーバ145への接続が利用可能になったとき、要求190をサーバ145、150に送信することができる。
本発明はまた、機能的なステップおよび/または非機能的な行為(acts)を含む方法によって記述することができる。以下に示すのは、本発明の実施において実行できる諸ステップおよび/または行為の記述である。通常、機能的な諸ステップは、達成された結果の点から本発明を記述し、一方、非機能的な行為は、特定の結果を達成するためのより特定のアクションを記述する。機能的な諸ステップおよび/または非機能的な行為は、特定の順序で記述されまたは特許請求され得るが、本発明は、諸ステップおよび/または行為の特定の順序付けまたは組合せに必ずしも限定しない。さらに、特許請求の範囲の列挙において、また、図3〜図5に対するフロー図の以下の説明において、諸ステップおよび/または行為の使用は、このような用語の望ましい特定の使用を示すように使用するものとする。
図3〜図5は、本発明の様々な例示の実施形態に対するフロー図を示す。図3〜図5の以下の説明は、図1A、図1B、および図2の対応する要素を時々参照する。これらの図から特定の要素を参照することができるが、このような要素は、説明のために過ぎず、明示的に特許請求されない限り、本発明の範囲を制限しあるいはその他の形で狭くすることを意図するものではない。
図3は、オフライン通信をサポートし、かつサービス要求の処理時間を延長するために、MAPI準拠メールアプリケーションを利用することによって、このようなメッセージ交換のために追加のインフラストラクチャを形成することなしに、メールトランスポートを介してウェブサービスを提供する方法300のためのフロー図を示す。方法300は、ウェブサービスメッセージを受信する行為305を含む。例えば、クライアント側115またはサーバ側160レイヤ化トランスポートが、ウェブサービスメッセージが要求120か、それとも応答125かに応じて、ウェブサービスメッセージ120、125を受信することができる。ウェブサービスメッセージ120、125は、メールメッセージトランスポートを介して通信するクライアント105とウェブサービス165の間でのメッセージ交換パターンの一部として、ウェブサービスメッセージ120、125を送信するためにMAPI準拠メールアプリケーション110、155の使用していることを識別するアドレッシング方式を含むべきである。MAPI準拠メールアプリケーションは、Microsoft Outlook(登録商標)、Outlook Express(登録商標)、Eudora(登録商標)などのうちの1つでよい。さらに、メールメッセージトランスポートは、SMTP、Hotmail(商標)、X.25、DEC All−In−1などのうちの1つとすることができる。
いずれにしても、方法300はさらに、エンドポイントのメーリングアドレスを識別する行為310を含む。例えば、カスタムレイヤ化トランスポート230内の様々なレイヤ210、215、220を使用して、ウェブサービスメッセージ120、125を対応するエンドポイント105、150に送信するために、アドレッシング方式に含まれる(クライアント105またはサーバ150に対する)エンドポイントメーリングアドレスを識別することができる。方法300はまた、MAPI準拠メールアプリケーションを用いてメールメッセージを生成する行為315を含む。例えば、MAPIメールアプリケーション110、155は、発信メールメッセージ135、140を生成するのに使用することができる。そのメールメッセージは、エンドポイントメーリングアドレスと、ウェブサービスメッセージ120、125と、ウェブサービス165およびそのウェブサービスメッセージ120、125に対する(例えば、要求、応答などの)メッセージ交換タイプを識別するための識別子とを含むべきである。
方法300はさらに、MAPI準拠メールアプリケーションの発信メールボックスにメールメッセージを送信する行為320を含む。例えば、カスタムレイヤ化トランスポート230は、メールメッセージトランスポートを介してエンドポイント105、150に後で送達するために、メールメッセージ135、140を、MAPIメールアプリケーション110、155の発信メールボックスに送信することができる。前に述べたように、カスタムレイヤ化トランスポート230中の1つまたは複数のAPI210、215、220を使用してメールメッセージ135、140を生成し、MAPI準拠メールアプリケーション110、155の発信メールボックスにメールメッセージ135、140を送信することもできる。
他の例示的な実施形態は、ウェブサービスメッセージ120、125がクライアント105からの要求メッセージ120であり、エンドポイントがウェブサービス165であることを含む。この例示の実施形態では、メールメッセージ135がエンドポイント165メーリングアドレスに送信される。次いで、他のメールメッセージ140がMAPI準拠メールアプリケーション110の着信メールボックスで受信される。そのメールメッセージ140は、クライアント105に対するメーリングアドレスと、要求120に対するウェブサービス応答125と、ウェブサービス165およびメールメッセージ140がウェブサービス応答125を含むことを示しているメッセージ交換タイプを識別するための識別子とを含む。その後、ウェブサービス応答125を、さらに処理するためにクライアントのウェブサービスアプリケーション130に送信することができる。
図4は、MAPI準拠メールアプリケーションを利用することにより、メールトランスポートを介してウェブサービスを提供する方法400のフロー図を示す。この例示的な実施形態では、方法400はメールメッセージトランスポートを介してメールメッセージを受信する行為405を含む。例えば、クライアント105またはサーバ150は、エンドポイント105、150ウェブサービスアプリケーション130、165に対応するMAPI準拠メールアプリケーション110、155の着信メールボックスにおいて、メールメッセージトランスポートを介してメールメッセージ135、140を受信することができる。その後、方法400は、メールメッセージがエンドポイントメールアドレスと、ウェブサービスメッセージと、識別子とを含むことを識別する行為410を含む。例えば、カスタムレイヤトランスポート115、160を使用することにより、メールメッセージ135、140は、MAPI準拠メールアプリケーション110、155に対応するエンドポイント105、150メーリングアドレスと、クライアント105/ウェブサービス165の間におけるメッセージ交換パターンの一部であるウェブサービスメッセージ120、125と、ウェブサービス165およびそのウェブサービスメッセージ120、125に対する(例えば、要求、応答などの)メール交換タイプを識別する識別子とを含むことを識別することができる。
ウェブサービスおよびそのウェブサービスメッセージに対するメール交換タイプに基づき、方法400はまた、ウェブサービスメッセージをエンドポイントウェブサービスアプリケーションに送信する行為415を含む。例えば、カスタムレイヤトランスポート210、215、220内の様々なAPIを用いて、メールメッセージにウェブサービスメッセージ120、125が含まれていることを識別した後、ウェブサービスメッセージ120、125は、処理のために適切なサービスアプリケーション130、165に送信することができる。
他の例示的な実施形態は、方法400のウェブサービスメッセージ120、125がクライアント105からの要求120であり、エンドポイントがウェブサービス165であることを含む。その実施形態では、もう一方のウェブサービスメッセージを要求120への応答125として識別するアドレッシング方式を含む他のウェブサービスメッセージ125を受信することができる。次いで、応答メッセージ125をクライアント105のMAPIメールアプリケーション110に送信するために、アドレッシング方式に含まれるクライアント105のメールアドレスを識別することができる。次いで、MAPI準拠メールアプリケーション155を用いて、他のメールメッセージ140が生成され、そのメッセージは、クライアント105のメーリングアドレスと、応答メッセージ125と、ウェブサービス165およびそのウェブサービスメッセージタイプが応答125であることを識別するための識別子とを含む。次いで、メールメッセージトランスポートを介してクライアント105に後で送達をするために、メールメッセージ140は、MAPIメールアプリケーション155の発信メールボックスに送信される。
図5は、オフライン通信をサポートし、かつNPDLデータ構造を生成するために、MAPIメールアプリケーションを利用して、ウェブサービスアプリケーションにアクセスすることを必要とせずに、メールトランスポートを介してウェブサービスアプリケーションに対するNPDLを提供する方法500のフロー図を示す。方法500は、エンドポイントからメールメッセージを受信する行為505を含む。例えば、図1Bを参照すると、NPDL要求190を(クライアント105から)ウェブサービスアプリケーション165に関連付けられたMAPIメールアプリケーション155により受信することができる。さらに、方法500は、メールメッセージがNPDLデータ構造を要求していることを識別する行為510を含む。例えば、NPDL要求190が、ウェブサービスアプリケーション130、165とエンドポイント105がメッセージを交換するときに準拠する1つまたは複数のコントラクトを記述するための仕様であるNPDLデータ構造を求める要求であることを識別するために、ウェブサービスエンジン170を使用することができる。
方法500はさらに、NPDLデータ構造を自動的に生成する行為515を含む。例えば、ウェブサービスエンジン170は、ウェブサービス165に対するNPDL175をストア180から取り出すことができ、あるいはウェブサービスアプリケーション165にアクセスせずにNPDLデータ構造175を自動的に生成することができる。その後、方法500は、NPDLデータ構造をクライアントに送信する行為520を含む。例えば、ウェブサービスエンジン170は、メールメッセージトランスポートを介して、応答メッセージ185中でNPDLデータ構造を送信することができる。この実施形態では、MAPI準拠メールアプリケーション155を用いて、他のメールメッセージ185を生成することができる。メールメッセージ185は、NPDLデータ構造と、クライアント105のMAPI準拠メールアプリケーション110に対するメーリングアドレスと、メールメッセージ185がNPDLデータ構造を含んでいることを識別するための識別子とを含む。その後、クライアント105のMAPI準拠メールアプリケーション110に後で送達するために、メールメッセージ185をサーバ150のMAPI準拠メールアプリケーション155の発信メールボックスに送信することができる。
NPDLはWSDLであり、NPDLデータ構造をXML文書とすることができる。さらに、メールメッセージ190は、メールメッセージの件名フィールド中に識別子を含むことにより、NPDLデータ構造175を要求していることが識別可能である。さらに、識別子は、ウェブサービスアプリケーション165に対する名前を含むこともできる。
本発明の範囲に含まれる諸実施形態はまた、その上に記憶されたコンピュータ実行可能命令またはデータ構造を有する、または搬送するためのコンピュータ読取り可能媒体を含む。このようなコンピュータ読取り可能媒体は、汎用または専用コンピュータによってアクセスできる任意の利用可能な媒体とすることができる。例として、それだけに限らないが、このようなコンピュータ読取り可能媒体は、RAM、ROM、EPROM、CD−ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気記憶装置、あるいはコンピュータ実行可能命令またはデータ構造の形式で所望のプログラムコード手段を搬送または記憶するのに使用可能な、また汎用もしくは専用コンピュータによってアクセス可能な他の任意の媒体を含むことができる。情報がネットワークまたは他の通信接続(有線、無線、または有線もしくは無線の組合せ)を介して、コンピュータに転送もしくは提供された場合、コンピュータは、当然、その接続をコンピュータ読取り可能媒体として見なす。したがって、このような接続もコンピュータ読取り可能媒体と呼ばれるのは当然である。上記の組合せもまた、コンピュータ読取り可能媒体の範囲に含まれるべきである。コンピュータ実行可能命令は、例えば、汎用コンピュータ、専用コンピュータ、または専用処理装置がある種の機能もしくは一群の機能を実施できるようにする命令およびデータを含む。
図6および以下の議論は、本発明を実施できる適切なコンピューティング環境の簡単で一般的な説明を提供することを意図している。必ずしも必要なことではないが、本発明は、ネットワーク環境中のコンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で記述される。一般に、プログラムモジュールは、特定のタスクまたは特定の抽象データ型を実行するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。コンピュータ実行可能命令、関連付けられたデータ構造、およびプログラムモジュールは、本明細書に開示の方法の諸ステップを実行するためのプログラムコード手段の諸実施例を表す。このような実行可能命令または関連付けられたデータ構造の特定のシーケンスは、このような諸ステップで記述される機能を実施するための対応する行為の実施例を表す。
当業者であれば、本発明は、パーソナルコンピュータ、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースもしくはプログラム可能な家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む多くのタイプのコンピュータシステムコンフィギュレーションを有するネットワークコンピューティング環境中で実施できることを理解されよう。本発明はまた、通信ネットワークを介して(有線リンク、無線リンク、または有線もしくは無線リンクの組合せによって)リンクされたローカルおよび遠隔の処理装置により、タスクが実施される分散コンピューティング環境中で実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルと遠隔の両方のメモリ記憶装置中に位置することができる。
図6を参照すると、本発明を実施するための例示的なシステムは、処理装置621、システムメモリ622、およびシステムメモリ622を含む様々なシステムコンポーネントを処理装置621に結合するシステムバス623を含む従来のコンピュータ620の形式の汎用コンピューティング装置を含む。システムバス623は、メモリバスもしくはメモリ制御装置、周辺バス、および任意の様々なバスアーキテクチャを用いるローカルバスを含む任意のいくつかのタイプのバス構造とすることができる。システムメモリは、ROM(読取り専用メモリ)624、およびRAM(ランダムアクセスメモリ)625を含む。起動中などに、コンピュータ620内の要素間で情報を転送できるようにする基本ルーチンを含むBIOS(基本入出力システム)626を、ROM624に記憶することができる。
コンピュータ620はまた、磁気ハードディスク639から読み取りまたは書き込む磁気ハードディスクドライブ627と、取外し可能磁気ディスク629から読み取りまたは書き込む磁気ディスクドライブ628と、CD−ROMもしくは他の光媒体などの取外し可能光ディスク631から読み取りまたは書き込む光ディスクドライブ630とを含むことができる。磁気ハードディスクドライブ627、磁気ディスクドライブ628、および光ディスクドライブ630は、ハードディスクドライブインターフェース632、磁気ディスクドライブインターフェース633、および光ドライブインターフェース634によって、それぞれ、システムバス623に接続されている。ドライブおよびそれに関連付けられたコンピュータ読取り可能媒体は、コンピュータ実行可能命令、データ構造、プログラムモジュール、およびコンピュータ620に対する他のデータの不揮発性ストレージを提供する。本明細書に記載の例示的な環境は、磁気ハードディスク639、取外し可能磁気ディスク629、および取外し可能光ディスク631を使用するが、磁気カセット、フラッシュメモリカード、DVD、ベルヌーイカートリッジ、RAM、ROMなどを含む、データを記憶する他のタイプのコンピュータ読取り可能媒体を使用することもできる。
オペレーティングシステム635、1つまたは複数のアプリケーションプログラム636、他のプログラムモジュール637、およびプログラムデータ638を含む1つまたは複数のプログラムモジュールを含むプログラムコード手段は、ハードディスク639、磁気ディスク629、光ディスク631、ROM624もしくはRAM625上に記憶することができる。ユーザは、キーボード640、ポインティング装置642、またはマイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどの他の入力装置(図示せず)を介してコンピュータ620にコマンドおよび情報を入力することができる。これらのおよび他の入力装置は、システムバス623に結合されたシリアルポートインターフェース646を介して処理装置621に接続されることが多い。あるいは、入力装置は、パラレルポート、ゲームポート、またはUSBなどの他のインターフェースによって接続することもできる。モニタ647または他の表示装置はまた、ビデオアダプタ648などのインターフェースを介してシステムバス623に接続されている。モニタに加えて、パーソナルコンピュータは、通常、スピーカおよびプリンタなどの他の周辺出力装置(図示せず)を含む。
コンピュータ620は、遠隔コンピュータ649aおよび649bなど1つまたは複数の遠隔コンピュータへの論理接続を用いてネットワーク化された環境中で動作することができる。遠隔コンピュータ649aおよび649bは、それぞれ別のパーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置もしくは他の共通のネットワークノードとすることができ、また図6では、メモリ記憶装置650a、650bおよびそれに関連付けられたアプリケーションプログラム636a、636bだけが示されているが、通常、コンピュータ620に関する上記の多くのまたはすべての要素を含むことができる。図6に示された論理接続は、限定するのではなく、例としてここに提示したLAN(ローカルエリアネットワーク)651、およびWAN(広域ネットワーク)652を含む。このようなネットワーク化された環境は、オフィス規模、または企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいて普通のものである。
LANネットワーク化環境で使用した場合、コンピュータ620は、ネットワークインターフェースまたはアダプタ653を介してローカルネットワーク651に接続される。WANネットワーク化環境で使用した場合、コンピュータ620は、モデム654、無線リンク、またはインターネットなどの広域ネットワーク652を介して通信を確立する他の手段を含むことができる。モデム654は、内蔵または外付けのものとすることができるが、シリアルポートインターフェース646を介してシステムバス623に接続されている。ネットワーク化された環境では、コンピュータ620に関して示したプログラムモジュール、またはその部分を、遠隔のメモリ記憶装置に記憶することができる。図示されたネットワーク接続は例示的なものであり、広域ネットワーク652を介して通信を確立する他の手段を使用できることも理解されたい。
本発明は、その趣旨または本質的な特性から逸脱することなく、他の特定の形態で実施することもできる。上記の諸実施形態は、すべての点において説明のためだけのものであり、限定するものではないと見なすべきである。したがって、本発明の範囲は上記の説明によるのではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等な意味および範囲に含まれる変更はすべて、その範囲に含まれるものとする。
本発明の例示的な諸実施形態によるクライアントとウェブサービスの間でメッセージを交換するためのMAPIメールアプリケーションを利用する分散システムを示す図である。 本発明の例示的な諸実施形態によるMAPIメールアプリケーションを使用したNPDL文書を要求するための分散システムを示す図である。 本発明の例示的な諸実施形態によるウェブサービスエンジンとMAPIメールアプリケーションの間で通信するためのトランスポート内の例示的なインターフェースのレイヤ化を示す図である。 本発明の例示的な諸実施形態によるメールトランスポートを介してウェブサービスを提供する方法のフロー図である。 本発明の例示的な諸実施形態によるメールトランスポートを介してウェブサービスを提供する方法の他のフロー図である。 本発明の例示的な諸実施形態によるメールトランスポートのウェブサービスアプリケーションに対するNPDLデータ構造を提供する方法のフロー図である。 本発明のために適切な動作環境を提供する例示的システムを示す図である。
符号の説明
105 クライアント
110、155 MAPIメールアプリケーション
150 サーバ
627 磁気ハードディスクドライブ
628 磁気ディスクドライブ
630 光ディスクドライブ

Claims (20)

  1. 分散環境中のコンピューティングシステムにおいて、オフライン通信および延長されたサービス要求処理時間をサポートするために、MAPI(Messaging Application Program Interface)準拠メールアプリケーションを利用することによって、このようなメッセージ交換のための追加のインフラストラクチャを形成することなく、メールトランスポートを介してウェブサービスを提供する方法であって、
    メールメッセージトランスポートを介して通信するクライアントとウェブサービスの間におけるメッセージ交換パターンの一部としてウェブサービスメッセージを送信するために、MAPI準拠メールアプリケーションを使用していることを識別するアドレッシング方式を含む前記ウェブサービスメッセージを受信する行為(act)と、
    前記ウェブサービスメッセージを対応するエンドポイントに送信するために、前記アドレッシング方式に含まれるエンドポイントメーリングアドレスを識別する行為と、
    前記MAPI準拠メールアプリケーションを用いてメールメッセージを生成する行為であって、前記メールメッセージは、前記エンドポイントメーリングアドレス、前記ウェブサービスメッセージ、並びに前記ウェブサービスおよび前記ウェブサービスメッセージに対するメッセージ交換タイプを識別するための識別子を含むことと、
    前記メールメッセージトランスポートを介して前記エンドポイントに引き続き後で送達するために、前記MAPI準拠メールアプリケーションの発信メールボックスに前記メールメッセージを送信する行為と、
    を備えることを特徴とする方法。
  2. 前記識別子は、前記メールメッセージの件名フィールド中に含まれていることを特徴とする請求項1に記載の方法。
  3. 前記メールメッセージトランスポートは、SMTP、Hotmail、X.25、またはDEC All−In−1から選択されることを特徴とする請求項1に記載の方法。
  4. 前記ウェブサービスメッセージは、前記クライアントからの要求メッセージであり、または前記ウェブサービスからの応答メッセージであることを特徴とする請求項1に記載の方法。
  5. 前記ウェブサービスメッセージは前記クライアントからの要求メッセージであり、また前記エンドポイントは前記ウェブサービスであり、前記方法は、
    前記メールメッセージを前記エンドポイントメーリングアドレスに送信する行為と、
    前記MAPI準拠メールアプリケーションの着信メールボックスにおいて、もう1つのメールメッセージを受信する行為であって、前記もう1つのメールメッセージは、前記クライアントに対するメーリングアドレス、前記要求メッセージに対するウェブサービス応答、並びに前記ウェブサービスの名前および前記他のメールメッセージが前記ウェブサービス応答を含むことを示しているメッセージ交換タイプを識別するための識別子を含むことと、
    さらに処理するために、前記ウェブサービス応答を前記クライアントのウェブサービスアプリケーションに送信する行為と、
    をさらに備えることを特徴とする請求項1に記載の方法。
  6. 1つまたは複数のAPI(application programming interfaces)をまた、前記メールメッセージを生成し、前記メールメッセージを前記MAPI準拠メールアプリケーションの前記発信メールボックスに送信するのに使用することを特徴とする請求項1に記載の方法。
  7. 前記MAPI準拠メールアプリケーションは、Microsoft Outlook、Outlook Express、またはEudoraのうちの1つであることを特徴とする請求項1に記載の方法。
  8. 分散環境中のコンピューティングシステムにおいて、オフライン通信および延長されたサービス要求処理時間をサポートするために、MAPI(Messaging Application Program Interface)準拠メールアプリケーションを利用することによって、このようなメッセージ交換のために追加のインフラストラクチャを形成することなく、メールトランスポートを介してウェブサービスを提供する方法であって、
    エンドポイントウェブサービスアプリケーションに対応するMAPI準拠メールアプリケーションの着信メールボックスにおいて、メールメッセージトランスポートを介してメールメッセージを受信する行為と、
    前記メールメッセージが、前記MAPI準拠メールアプリケーションに対応するエンドポイントメーリングアドレス、クライアントとウェブサービスの間におけるメッセージ交換パターンの一部であるウェブサービスメッセージ、並びに前記ウェブサービスおよび前記ウェブサービスメッセージに対するメッセージ交換タイプを識別するための識別子を含んでいることを識別する行為と、
    前記ウェブサービスおよび前記ウェブサービスメッセージに対する前記メッセージ交換タイプに基づいて、処理のために、前記ウェブサービスメッセージを前記エンドポイントウェブサービスアプリケーションに送信する行為と、
    を備えることを特徴とする方法。
  9. メモリリソースの節約のために、前記ウェブサービスメッセージが前記ウェブサービスアプリケーションに送信された後、前記メールメッセージを削除する行為をさらに備えることを特徴とする請求項8に記載の方法。
  10. 前記識別子は、前記メールメッセージの件名フィールド中に含まれていることを特徴とする請求項8に記載の方法。
  11. 前記メールメッセージトランスポートは、SMTP、Hotmail、X.25、またはDEC All−In−1から選択されることを特徴とする請求項8に記載の方法。
  12. 前記ウェブサービスメッセージは、前記クライアントからの要求メッセージであり、または前記ウェブサービスからの応答メッセージであることを特徴とする請求項8に記載の方法。
  13. 前記ウェブサービスメッセージは前記クライアントからの要求メッセージであり、また前記エンドポイントは前記ウェブサービスであり、前記方法は、
    前記他のウェブサービスメッセージを前記要求メッセージへの応答メッセージであると識別する他のアドレッシング方式を含む前記他のウェブサービスメッセージを受信する行為と、
    前記応答メッセージを前記クライアントのMAPI準拠メールアプリケーションに送信するために前記他のアドレッシング方式に含まれる前記クライアントのメーリングアドレスを識別する行為と、
    前記MAPI準拠メールアプリケーションを用いて他のメールメッセージを生成する行為であって、前記メールメッセージは、前記クライアントのメーリングアドレス、前記応答メッセージ、並びに前記ウェブサービスおよび前記応答ウェブサービスメッセージが前記応答メッセージであることを識別するための他の識別子を含むことと、
    前記メールメッセージトランスポートを介して前記クライアントに引き続き後で送達するために、前記MAPI準拠メールアプリケーションの発信メールボックスに前記他のメールメッセージを送信する行為と、
    をさらに備えることを特徴とする請求項8に記載の方法。
  14. 1つまたは複数のAPIをまた、前記メールメッセージを生成し、前記メールメッセージを前記MAPI準拠メールアプリケーションの前記発信メールボックスに送信するのに使用することを特徴とする請求項13に記載の方法。
  15. 前記MAPI準拠メールアプリケーションは、Microsoft Outlook、Outlook Express、またはEudoraのうちの1つであることを特徴とする請求項8に記載の方法。
  16. 分散環境中のコンピューティングシステムにおいて、オフライン通信をサポートし、かつNPDL(Network Protocol Description Language)データ構造を生成するために、MAPI(Messaging Application Program Interface)準拠メールアプリケーションを利用することによって、ウェブサービスアプリケーションにアクセスすることを必要とすることなく、メールトランスポートを介して前記ウェブサービスアプリケーションのためのNPDLを配布する方法であって、
    ウェブサービスアプリケーションに関連付けられたMAPI準拠メールアプリケーションの着信メールボックスにおいて、エンドポイントからメールメッセージを受信する行為と、
    エンドポイントアプリケーションが前記ウェブサービスアプリケーションとメッセージを交換するときに準拠する1つまたは複数のコントラクトを記述するための仕様であるNPDLデータ構造を要求しているものと、前記メールメッセージを識別する行為と、
    前記ウェブサービスアプリケーションにアクセスすることなしに、前記NPDLデータ構造を自動的に生成する行為と、
    前記エンドポイントに前記NPDLデータ構造を送信する行為と、
    を備えることを特徴とする方法。
  17. 前記エンドポイントアプリケーションはクライアントであり、前記メールメッセージは前記ウェブサービスアプリケーションに関連付けられたサーバにおいて受信されるものであり、送信する前記行為は、
    前記MAPI準拠メールアプリケーションを用いてもう1つのメールメッセージを生成する行為であって、前記もう1つのメールメッセージは、前記NPDLデータ構造、前記クライアントのMAPI準拠メールアプリケーションに対するメーリングアドレス、および前記もう1つのメールメッセージが前記NPDLデータ構造を含んでいることを識別するための識別子を含むことと、
    前記クライアントのMAPI準拠メールアプリケーションに引き続き後で送達するために、前記MAPI準拠メールアプリケーションの発信メールボックスに前記他のメッセージを送信する行為と、
    を含むことを特徴とする請求項16に記載の方法。
  18. 前記NPDLはWSDLであり、前記NPDLデータ構造はXML文書であることを特徴とする請求項16に記載の方法。
  19. 前記メールメッセージは、前記メールメッセージの件名フィールド中の識別子によって、NPDLデータ構造を要求しているものとして識別されることを特徴とする請求項16に記載の方法。
  20. 前記件名フィールド中の前記識別子は、前記ウェブサービスアプリケーションに対する名前を含んでいることを特徴とする請求項19に記載の方法。
JP2006024864A 2005-03-04 2006-02-01 Mapi準拠のメールアプリケーションを用いたウェブサービス処理 Pending JP2006244472A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/072,384 US7600048B2 (en) 2005-03-04 2005-03-04 Web services processing using MAPI compliant mail applications

Publications (1)

Publication Number Publication Date
JP2006244472A true JP2006244472A (ja) 2006-09-14

Family

ID=36791396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006024864A Pending JP2006244472A (ja) 2005-03-04 2006-02-01 Mapi準拠のメールアプリケーションを用いたウェブサービス処理

Country Status (5)

Country Link
US (1) US7600048B2 (ja)
EP (1) EP1699010A3 (ja)
JP (1) JP2006244472A (ja)
KR (1) KR20060096267A (ja)
CN (1) CN1829224A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014529131A (ja) * 2011-08-19 2014-10-30 マイクロソフト コーポレーション ウェブベース電子メールシステムにおける対話構造の同期化

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041628A1 (en) * 2004-08-23 2006-02-23 International Business Machines Corporation Electronic routing slips for inter-organizational electronic mail
US8095599B2 (en) * 2005-10-20 2012-01-10 International Business Machines Corporation Mail-based web application and document delivery
US8271602B2 (en) 2006-01-11 2012-09-18 Oracle International Corporation System and method for conversation based on web service addressing
US20070162560A1 (en) * 2006-01-11 2007-07-12 Bea Systems, Inc. System and method for asynchronous request response
US8452853B2 (en) * 2007-03-05 2013-05-28 International Business Machines Corporation Browser with offline web-application architecture
US20080228880A1 (en) * 2007-03-12 2008-09-18 Microsoft Corporation Managed code mapi apis
US8407297B2 (en) * 2007-10-22 2013-03-26 Sap Ag Systems and methods to receive information from a groupware client
US8676902B2 (en) * 2007-11-28 2014-03-18 International Business Machines Corporation System and method for service oriented email client application
US8505038B2 (en) * 2008-01-28 2013-08-06 Blue Coat Systems, Inc. Method and system for enhancing MS exchange (MAPI) end user experiences in a split proxy environment
US8190703B2 (en) * 2008-04-23 2012-05-29 Microsoft Corporation Extensible browser platform for web applications
US9195526B2 (en) * 2008-07-18 2015-11-24 Blackberry Limited Application integration in networked computing devices
CN102088401B (zh) * 2009-12-07 2013-08-07 华为技术有限公司 寻址处理方法和系统以及网络接口设备
US9961125B2 (en) 2013-07-31 2018-05-01 Microsoft Technology Licensing, Llc Messaging API over HTTP protocol to establish context for data exchange
US10440066B2 (en) 2013-11-15 2019-10-08 Microsoft Technology Licensing, Llc Switching of connection protocol
US9699128B1 (en) 2016-05-17 2017-07-04 Google Inc. Automated generation of prompts and analyses of user responses to the prompts to determine an entity for an action and perform one or more computing actions related to the action and the entity
US10491596B2 (en) * 2017-07-31 2019-11-26 Vmware, Inc. Systems and methods for controlling email access
CN108092878B (zh) * 2017-12-07 2020-07-28 南京富士通南大软件技术有限公司 监测Exchange服务器与Outlook客户端之间通信状态的方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923848A (en) * 1996-05-31 1999-07-13 Microsoft Corporation System and method for resolving names in an electronic messaging environment
US5818447A (en) * 1996-06-06 1998-10-06 Microsoft Corporation System and method for in-place editing of an electronic mail message using a separate program
US5917489A (en) * 1997-01-31 1999-06-29 Microsoft Corporation System and method for creating, editing, and distributing rules for processing electronic messages
US6405225B1 (en) * 1998-06-17 2002-06-11 Microsoft Corporation Integrating email functionality into a word processor by incorporating an email GUI within the word processor
US7373386B2 (en) * 2003-08-11 2008-05-13 Research In Motion Limited System and method for configuring access to electronic mailboxes
US7801999B2 (en) * 2004-12-13 2010-09-21 Microsoft Corporation Binding heterogeneous transports to a message contract

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014529131A (ja) * 2011-08-19 2014-10-30 マイクロソフト コーポレーション ウェブベース電子メールシステムにおける対話構造の同期化
KR101919180B1 (ko) * 2011-08-19 2019-02-08 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 웹 기반 이메일 시스템에서의 대화 구조의 동기화 기법

Also Published As

Publication number Publication date
KR20060096267A (ko) 2006-09-11
US20060200522A1 (en) 2006-09-07
CN1829224A (zh) 2006-09-06
EP1699010A2 (en) 2006-09-06
US7600048B2 (en) 2009-10-06
EP1699010A3 (en) 2006-12-13

Similar Documents

Publication Publication Date Title
JP2006244472A (ja) Mapi準拠のメールアプリケーションを用いたウェブサービス処理
US7363342B1 (en) Method and apparatus for providing web services in a collaborative computing system
Soni et al. API features individualizing of web services: REST and SOAP
Curbera et al. Unraveling the Web services web: an introduction to SOAP, WSDL, and UDDI
Nguyen et al. Ws2jade: Integrating web service with jade agents
Menge Enterprise service bus
US7590988B2 (en) Dynamic service generation for legacy components
KR101159364B1 (ko) 분산형 애플리케이션의 객체 지향 표현과 서비스 지향 표현 간의 매핑
US7904111B2 (en) Mobile exchange infrastructure
US20050204051A1 (en) Open content model Web service messaging
WO2002015029A1 (en) Network application program interface facilitating communication in a distributed network environment
JP2007514223A (ja) クライアント要求をウェブ・サービスにリダイレクトする方法
CN101202716A (zh) 一种信息存储方法及通讯系统以及相关设备
CN107231290A (zh) 一种即时通信方法和系统
JP5593359B2 (ja) 通信制御装置、メッセージ転送方法およびメッセージ転送プログラム
US7801999B2 (en) Binding heterogeneous transports to a message contract
Pakkala et al. A generic communication middleware architecture for distributed application and service messaging
Goel et al. Message-oriented-middleware in a distributed environment
Ma et al. Research and implement on application integration based on the apache synapse ESB platform
Toman Review of Web Service Technologies: REST over SOAP
Uramoto et al. InfoBus repeater: a secure and distributed publish/subscribe middleware
KR100463832B1 (ko) 인터넷 웹 환경에서 에스.오.에이.피(soap) 통신을 이용한 협업 지원방법
JP5658184B2 (ja) 情報共有装置、閲覧促進方法及びプログラム
Webber et al. Realizing Service-Oriented Architectures with Web Services
CN117971516A (zh) 消息队列的访问方法、系统、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110506

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111014