JP6265473B2 - Web service system, Web service message mediation method, and proxy server - Google Patents

Web service system, Web service message mediation method, and proxy server Download PDF

Info

Publication number
JP6265473B2
JP6265473B2 JP2013247874A JP2013247874A JP6265473B2 JP 6265473 B2 JP6265473 B2 JP 6265473B2 JP 2013247874 A JP2013247874 A JP 2013247874A JP 2013247874 A JP2013247874 A JP 2013247874A JP 6265473 B2 JP6265473 B2 JP 6265473B2
Authority
JP
Japan
Prior art keywords
request command
web service
wsdl
server
message
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.)
Active
Application number
JP2013247874A
Other languages
Japanese (ja)
Other versions
JP2015106272A (en
Inventor
林 通秋
通秋 林
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2013247874A priority Critical patent/JP6265473B2/en
Publication of JP2015106272A publication Critical patent/JP2015106272A/en
Application granted granted Critical
Publication of JP6265473B2 publication Critical patent/JP6265473B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、Webサービスシステム、Webサービスメッセージ仲介方法およびプロキシサーバに関し、特に、API仕様の拡張性に優れたWebサービスシステム、Webサービスメッセージ仲介方法およびプロキシサーバおよびに関する。   The present invention relates to a web service system, a web service message mediation method, and a proxy server, and more particularly, to a web service system, a web service message mediation method, and a proxy server that are excellent in extensibility of API specifications.

Webサービスシステムは、各種機能を実行する複数のアプリケーションサーバを備え、それらのアプリケーションサーバ間でRESTやSOAPなどといったプロトコルを用いてメッセージを授受して連携を図る。   The Web service system includes a plurality of application servers that execute various functions, and exchanges messages using a protocol such as REST or SOAP between the application servers for cooperation.

図6は、Webサービスシステムの基本構成を示す。このWebサービスシステムは、システムA〜Dとして図示されている4つのアプリケーションサーバを備える。システムA〜Dは、互いに異なる機能を実行する。ここで、システムAは、システムB〜Dと各種メッセージを授受し、Webサービスシステム全体の連携を図る基幹システムとして機能する。システムB〜Dは、互いに異なる機能を実行する。また、システムB〜Dは、必要に応じてシステムAと、あるいはシステムAを介して他システムとメッセージを授受することにより他システムが処理した各種情報を取得できる。   FIG. 6 shows the basic configuration of the Web service system. This Web service system includes four application servers illustrated as systems A to D. The systems A to D perform different functions. Here, the system A functions as a backbone system that exchanges various messages with the systems B to D and cooperates with the entire Web service system. Systems B to D perform different functions. Further, the systems B to D can acquire various types of information processed by other systems by exchanging messages with the system A or with other systems via the system A as necessary.

各システムA〜Dはそれぞれ、プログラムおよびAPI(application programming interface)を備える。各システムA〜DのAPI仕様は標準化され、それによりシステムA〜Dは、メッセージを相互に理解できるようになっている。Webサービスシステムの機能拡張のために各システムA〜DのAPI仕様が拡張される場合があるが、その拡張は、Webサービスシステムを構成する全てのシステムA〜DのAPI仕様が拡張され、システムA〜Dがメッセージを相互に理解できるようになった場合に効果的なものとなる。   Each of the systems A to D includes a program and an API (application programming interface). The API specifications of each system A to D are standardized, so that the systems A to D can understand each other's messages. The API specifications of each system A to D may be extended to extend the functions of the Web service system. However, the API specifications of all the systems A to D that make up the Web service system are extended. This is effective when A to D can understand each other's messages.

特許文献1には、ネットワーク管理装置に関し、SNMP管理情報とCMIP管理情報との情報体系の違いを整合し、移植性と拡張性の高い管理アプリケーションを作成可能とするため、SNMP管理情報とCMIP管理情報との情報体系の違いを整合するための情報を格納した整合情報データベースを備え、この整合情報データベースに格納された情報を参照してNMP管理情報とCMIP管理情報との情報体系を変換することが記載されている。   In Patent Document 1, regarding the network management device, SNMP management information and CMIP management are managed in order to match the difference in information system between SNMP management information and CMIP management information and to create a management application with high portability and expandability. Provide a consistency information database that stores information for matching the difference in information system with the information, and convert the information system between NMP management information and CMIP management information by referring to the information stored in this consistency information database Is described.

特開平7−250065号公報Japanese Patent Laid-Open No. 7-250065

上述したように、従来では、Webサービスシステムの機能拡張のためのAPI仕様の拡張は、特定のシステムのAPI仕様だけでなく、Webサービスシステムを構成する全てのシステムのAPI仕様が拡張された場合に効果的なものとなる。   As described above, in the past, the API specifications for extending the functions of a Web service system are not only the API specifications of a specific system, but the API specifications of all systems that make up the Web service system. It will be effective.

例えば、図6に示すように、Webサービスメッセージのコマンド、パラメータ、引数の数が増やされるなどして、システムDの API仕様だけが拡張された場合、システムDがそのAPI仕様によるメッセージを送出してもシステムAがそれを理解できず、システムAがそのメッセージを理解できたとしてもシステムB〜Cがそれを理解できないという不整合が生じる。この不整合をなくすためには、システムA〜Dの全てのAPI仕様が拡張される必要がある。   For example, as shown in FIG. 6, when only the API specification of system D is expanded by increasing the number of commands, parameters, and arguments of the Web service message, system D sends a message based on the API specification. However, the system A cannot understand it, and even if the system A understands the message, the system B to C cannot understand it. In order to eliminate this inconsistency, all API specifications of the systems A to D need to be extended.

このようなケースでのAPI仕様の拡張の工数の増大は、Webサービスシステムの機能拡張の阻害要因となる。このため、Webサービスシステムを構成する特定のシステムのAPI仕様が拡張されても、Webサービスシステム全体に及ぶ影響が少なく、しかも、API仕様の拡張が極力有効になることが望まれる。   In such a case, the increase in the man-hours for extending the API specifications becomes a hindrance to the expansion of Web service system functions. For this reason, even if the API specification of a specific system constituting the Web service system is extended, it is desired that the influence on the entire Web service system is small, and that the extension of the API specification becomes as effective as possible.

引用文献1には、整合情報データベースを用いてインタフェースの相違を整合させる手法が開示されている。しかし、このような手法では、1対1のシステム間でのインタフェースの相違を整合させることは容易であるが、多対多のシステム間でのインタフェースの相違を整合させることは困難である。Webサービスシステムでは、多対多のシステム間でAPI仕様が多様に拡張されることが多々あるので、引用文献1での手法は、Webサービスシステムにおける多様なインタフェースへの対応という観点では拡張性に優れているとは言えない。   Cited Document 1 discloses a technique for matching interface differences using a matching information database. However, with such a technique, it is easy to match the interface differences between the one-to-one systems, but it is difficult to match the interface differences between the many-to-many systems. In Web service systems, API specifications are often expanded in many-to-many systems, so the technique in Cited Reference 1 is extensible in terms of dealing with various interfaces in Web service systems. It's not good.

なお、Webサービスシステムを構成するシステムのうち、API仕様が拡張されたシステムだけでの連携に留め、未拡張のシステムでは拡張を無視するという手法も考えられる。この手法によれば、特定のシステムのAPI仕様が拡張された場合の影響を少なくできるが、API仕様の拡張によるサービスは、API仕様が拡張済みのシステム間に限られ、他のシステムはそのサービスを全く受けることができない。結局、システムのAPI仕様の拡張がそのままWebサービスシステムに影響することになる。   In addition, it is possible to use only the system with the API specification expanded among the systems that make up the Web service system, and ignore the expansion in the unexpanded system. Although this method can reduce the impact when the API specification of a specific system is extended, the service by extending the API specification is limited to the systems where the API specification has been extended, and other systems have their services. Can not receive at all. In the end, the extension of the system API specifications will directly affect the Web service system.

また、Webサービスシステムを構成するシステムを、中間言語となるAPIを介して連携させる手法も考えられる。この手法によれば、特定のシステムのAPI仕様が拡張された場合、API仕様が拡張されたシステムのメッセージと中間言語との変換を変更するだけで対処できる。しかし、API仕様の拡張を予め想定して中間言語を作っておく必要があり、実現が困難である。   Another possible method is to link the systems that make up the Web service system via an API that is an intermediate language. According to this method, when the API specification of a specific system is extended, it can be dealt with by simply changing the conversion between the message of the system with the extended API specification and the intermediate language. However, it is necessary to create an intermediate language in advance of the API specification expansion, which is difficult to implement.

本発明の目的は、上記課題を解決し、API仕様の拡張性に優れたWebサービスシステム、Webサービスメッセージ仲介方法およびプロキシサーバを提供することにある。   An object of the present invention is to provide a Web service system, a Web service message mediating method, and a proxy server that solve the above-described problems and have excellent expandability of API specifications.

上記課題を解決するため、本発明のWebサービスシステムは、各種機能を実行する複数のアプリケーションサーバと、前記複数のアプリケーションサーバ間で授受されるWebサービスメッセージを仲介するプロキシサーバを備え、前記複数のアプリケーションサーバの各々は、各自の機能を実行するためのプログラムとAPIを備え、前記プロキシサーバは、アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するか、を選択的に実行する機能を有することを特徴としている。 In order to solve the above problems, a web service system according to the present invention includes a plurality of application servers that execute various functions, and a proxy server that mediates a web service message exchanged between the plurality of application servers. Each application server has a program and API for executing its own function, and when the proxy server receives a Web service message from the application server, if it is a request command, it changes its contents without transferred to the request command receiver application areas Activation server, when receiving a normal response message thereto, forwards the request command source application areas Activation server without changing its contents, you receive an error message to the request command when is the request co According to the policy that is set in advance according to the change of the WSDL definition for command, either forward the request command, which is a partial modification of the specifications in the request command receiver Application areas Activation server, the request command received, possible to respond to it or forwarded to the application areas Activation server with sex, it is characterized by having a selective ability to run.

また、本発明のWebサービスメッセージ仲介方法は、複数のアプリケーションサーバで構成されるWebサービスシステムにおけるWebサービスメッセージ仲介方法であって、Webサービスメッセージを受信する第1のステップと、前記第1のステップにより受信されたWebサービスメッセージにおけるWSDL定義を生成する第2のステップと、処理判定を行う第3のステップと、前記第3のステップでの判定結果に従ってWebサービスメッセージを送信する第4のステップを有し、前記第3のステップは、アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するかを、選択的に実行することを特徴としている。 The web service message mediation method of the present invention is a web service message mediation method in a web service system composed of a plurality of application servers, wherein the first step of receiving a web service message and the first step a fourth step that sends Web service message according to the determination result of the second step of generating a WSDL definition in the received Web service message, a third step of performing processing determination in the third step by has the third step, when receiving the Web service message from the application server, if it is a request command is transferred to the request command receiver application areas Activation server without changing its contents, contrast If a normal response message is received, change its contents. Without transferred to the request command source Application areas Activation server, when receiving an error message to the request command, according to the policy that is set in advance according to the change of the WSDL definition for the request command, partially modified specifications a request command requesting command receiver application areas Activation or forwarded to the server, the request command received, whether to forward the app Ke Activation server that might respond to it, it is characterized by performing selective .

また、本発明のプロキシサーバは、複数のアプリケーションサーバで構成されるWebサービスシステム用のプロキシサーバであって、アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するか、を選択的に実行する機能を有することを第1の特徴としている。 The proxy server of the present invention is a proxy server for a web service system composed of a plurality of application servers. When a web service message is received from an application server, if it is a request command, the content is displayed. forwards a request command receiver application areas Activation server without changing, when receiving a normal response message thereto, forwards the request command source application areas Activation server without changing the content, the error to the request command when receiving the message, according to the policy that is set in advance according to the change of the WSDL definition for the request command, or transfers the request command, which is a partial modification of the specifications in the request command receiver application areas Activation server was received Respond to the request command Is the first feature in that it has a function of Application areas Activation or forwarded to the server, to selectively execute that might.

また、本発明のプロキシサーバは、Webサービスメッセージを受信する受信部と、前記受信部により受信されたWebサービスメッセージのうち、要求コマンドに対するWSDL定義を生成するWSDL生成部と、処理判定部と、前記処理判定部による判定結果に従ってWebサービスメッセージを送信する送信部と、前記WSDL生成部により生成されたWSDL定義により、要求コマンド送信元アプリケーションサーバごとに事前に格納されているWSDL定義を更新して格納するWSDLデータベースと、前記処理判定部での判定結果をトランザクションの状態遷移と共に蓄積する状態管理データベースと、前記受信部により受信されたWebサービスメッセージとその受信に対して行う動作のポリシーを格納するポリシーデータベースを備え、前記処理判定部は、前記WSDLデータベースに要求コマンド送信元アプリケーションサーバごとに事前に格納されている更新前のWSDL定義と前記WSDL生成部により生成されたWSDL定義との差分を要求コマンド送信元アプリケーションサーバ対応に求め、該差分を追加のWSDL定義として要求コマンド送信元アプリケーションサーバごとに前記WSDLデータベースに格納させることによりWSDL定義を更新させ、また、処理結果をトランザクションの状態遷移と共に前記状態管理データベースに蓄積させ、さらに、Webサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送させ、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送させ、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドの要求コマンド受信先アプリーションサーバに転送させるか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送させるかを、選択的に実行することを第2の特徴としている。 Further, the proxy server of the present invention includes a receiving unit that receives a Web service message, a WSDL generating unit that generates a WSDL definition for a request command out of the Web service message received by the receiving unit, a processing determination unit, The WSDL definition stored in advance for each request command transmission source application server is updated by the transmission unit that transmits the Web service message according to the determination result by the processing determination unit, and the WSDL definition generated by the WSDL generation unit. Stores a WSDL database to be stored, a state management database that accumulates determination results in the processing determination unit along with transaction state transitions, a Web service message received by the reception unit, and a policy of an operation to be performed on the reception A policy database, and the processing determination unit includes the WSDL database. The difference between the WSDL definition before update stored in advance for each request command transmission source application server and the WSDL definition generated by the WSDL generation unit is obtained corresponding to the request command transmission source application server, and the difference is added. The WSDL definition is updated by storing it in the WSDL database for each request command transmission source application server as the WSDL definition, the processing result is accumulated in the state management database together with the state transition of the transaction, and the Web service message is received. when, if it is a request command, it is transferred to the request command receiver application areas Activation server without changing its contents, when receiving a normal response message thereto, the request command transmission without changing its contents transfer to the original application Quai Activation server It was, when receiving an error message to the request command, WSDL definition of according to the policy that is set in advance according to the change request command receiver Application areas Activation server request command, which is a partial modification of the specifications for the request command Luke is transferred to the request command received, whether to transfer the app Ke Activation server that might respond to it, and the second feature to run selectively.

また、本発明のプロキシサーバは、前記ポリシーが、要求コマンドのパラメータについては、その差分が1つの場合、当該パラメータを削除した要求コマンドを要求コマンド受信先アプリーションサーバに転送させ、その差分が2つの場合、差分が2つ以下のアプリーションサーバに要求コマンドを転送させるように設定され、要求コマンド自体については、要求コマンド自体が未サポートの場合、該要求コマンドを、それをサポート可能なアプリーションサーバに転送させるように設定されていることを第3の特徴としている。 Further, the proxy server of the present invention, the policy is, the parameters of the request command, if the difference is one, is transferred a request command that deletes the parameter request command receiver Application areas Activation server, the difference is 2 one of the cases, the difference is set so as to transfer the request command to the two following applications Ke Activation server, the request command itself, if the request command itself is unsupported, the request command, it can support app Ke The third feature is that it is set to be transferred to an application server.

さらに、本発明のプロキシサーバは、前記ポリシーが、さらに、要求コマンドの引数の数の差に応じた、要求コマンドあるいは仕様を一部変更した要求コマンドの転送について設定していることを第4の特徴としている。   Furthermore, the proxy server according to the fourth aspect of the present invention is configured so that the policy further sets transfer of a request command or a request command in which a specification is partially changed in accordance with a difference in the number of arguments of the request command. It is a feature.

本発明によれば、要求コマンド送信先アプリケーションサーバからエラーメッセージが返される場合でも、要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するか、を選択的に実行するので、API仕様の拡張性に優れたWebサービスシステムを実現できる。 According to the present invention, even when an error message is returned from the request command transmission destination application server, a request command whose request is partially changed is received according to a policy set in advance according to a change in the WSDL definition for the request command. earlier application areas Activation or forwarded to the server, the request command received, or transferred to application areas Activation server that might respond to it, because selectively executes, scalable of API specification Web A service system can be realized.

また、特定のアプリケーションサーバにおけるAPI仕様の拡張に対して、ポリシーデータベースに格納するポリシーで対処できるので、API仕様の拡張に対処するための工数の増大を抑制できる。また、API仕様の拡張がWebサービスシステム全体に極力影響しないようにでき、さらに、API仕様の拡張を極力有効利用できる。   In addition, since the API specification in a specific application server can be handled by the policy stored in the policy database, an increase in man-hours for dealing with the API specification expansion can be suppressed. In addition, the extension of the API specification can be prevented from affecting the entire Web service system as much as possible, and the extension of the API specification can be used as effectively as possible.

本発明に係るWebサービスシステムの一実施形態を示すブロック図である。It is a block diagram which shows one Embodiment of the web service system which concerns on this invention. RESTメッセージの具体例を示す図である。It is a figure which shows the specific example of a REST message. WSDL定義の具体例を示す図である。It is a figure which shows the specific example of WSDL definition. 名前空間定義の具体例を示す図である。It is a figure which shows the specific example of a namespace definition. 図1のWSPにおける処理の一例を示すフローチャートである。It is a flowchart which shows an example of the process in WSP of FIG. Webサービスシステムの基本構成を示すブロック図である。It is a block diagram which shows the basic composition of a Web service system.

以下、図を参照して本発明を説明する。以下では、Webサービスシステムを構成するシステム間で授受されるメッセージ(Webサービスメッセージ)がREST(Representational State Transfer)メッセージであるとして説明する。   The present invention will be described below with reference to the drawings. In the following description, it is assumed that a message (Web service message) exchanged between systems constituting the Web service system is a REST (Representational State Transfer) message.

図1は、本発明に係るWebサービスシステムの一実施形態を示すブロック図である。本実施形態のWebサービスシステムが図6と異なるのは、プロキシサーバ(WSP:Web Services Proxy)10を備える点である。   FIG. 1 is a block diagram showing an embodiment of a Web service system according to the present invention. The Web service system of this embodiment is different from FIG. 6 in that a proxy server (WSP: Web Services Proxy) 10 is provided.

ここで、システムAは、WSP10を介してシステムB〜Dと各種RESTメッセージを授受し、Webサービスシステム全体の連携を図る基幹システムとして機能する。システムB〜Dは、互いに異なる機能を実行する。また、システムB〜Dは、必要に応じてWSP10を介してシステムAと、あるいはWSP10およびシステムAを介して他システムと各種RESTメッセージを授受することにより他システムの機能により処理された各種情報を取得できる。   Here, the system A functions as a backbone system that exchanges various REST messages with the systems B to D via the WSP 10 to link the entire Web service system. Systems B to D perform different functions. In addition, the systems B to D receive various types of information processed by the functions of other systems by exchanging various REST messages with the system A via the WSP10 or with other systems via the WSP10 and the system A as necessary. You can get it.

WSP10は、各システムA〜D間で授受されるRESTメッセージを仲介し、特定のシステムのAPI仕様が拡張された場合でも、システムA〜Dを極力連携可能にするために備えられたものであり、REST API受信部11、WSDL(Web Services Description Language)生成部12、処理判定部13、REST API送信部14、WSDLデータベース(DB)15、状態管理データベース16およびポリシーデータベース17を備える。なお、WSDL生成部12や処理判定部13は、CPUとソフトウエアで構成できる。また、WSDLデータベース15や状態管理データベース16やポリシーデータベース17は、外部に設けてもよい。   WSP10 mediates REST messages exchanged between systems A to D, and is provided to enable systems A to D to cooperate as much as possible even when the API specifications of a specific system are expanded. A REST API reception unit 11, a WSDL (Web Services Description Language) generation unit 12, a processing determination unit 13, a REST API transmission unit 14, a WSDL database (DB) 15, a state management database 16, and a policy database 17. The WSDL generation unit 12 and the process determination unit 13 can be configured with a CPU and software. Further, the WSDL database 15, the state management database 16, and the policy database 17 may be provided outside.

REST API受信部11は、各システムA〜Dから送出される各種RESTメッセージを受信する。   The REST API receiving unit 11 receives various REST messages sent from the systems A to D.

WSDL生成部12は、REST API受信部11により受信されたRESTメッセージ、特に要求コマンドのRESTメッセージからWSDL定義を生成する。また、名前空間定義が必要な場合には、それも生成する。WSDL定義は、Webメッセージ仕様のWSDL、ここではRESTメッセージ仕様のWSDLであり、名前空間定義は、RESTメッセージ仕様をさらに詳細化したWSDLである。RESTメッセージにおけるWSDL定義は、WSDL2.0(以降)の枠組みを使えば生成可能である。WSDL定義および名前空間定義の生成については、例えば、(http://www.ibm.com/developerworks/webservices/library/ws-restwsdl/#describerestservice)が参照される。   The WSDL generation unit 12 generates a WSDL definition from the REST message received by the REST API reception unit 11, particularly the REST message of the request command. If a namespace definition is required, it is also generated. The WSDL definition is the WSDL of the Web message specification, here the WSDL of the REST message specification, and the namespace definition is a WSDL that further refines the REST message specification. WSDL definitions in REST messages can be generated using the framework of WSDL 2.0 (or later). For generating the WSDL definition and the namespace definition, for example, refer to (http://www.ibm.com/developerworks/webservices/library/ws-restwsdl/#describerestservice).

図2は、RESTメッセージの具体例を示している。この例は、'gone with the wind' というタイトルのコンテンツのリストを検索する要求コマンドと、それに対して返された応答メッセージの例を示している。また、図3は、WSDL定義の具体例を示し、図4は、名前空間定義の具体例を示している。   FIG. 2 shows a specific example of the REST message. This example shows an example of a request command that retrieves a list of content titled 'gone with the wind' and the response message that is returned. FIG. 3 shows a specific example of the WSDL definition, and FIG. 4 shows a specific example of the name space definition.

処理判定部13は、WSDL2.0(以降)の枠組みを使って事前に構成され、WSDLデータベース15に予め格納されているWSDL定義(名前空間定義を含む)とWSDL生成部12により生成されたWSDL定義(RESTメッセージ仕様のWSDL)との差分をRESTメッセージ送信元システム対応に求め、該差分を、追加WSDL定義として、WSDLデータベース15にRESTメッセージ送信元システム対応に格納する。   The processing determination unit 13 is configured in advance using the framework of WSDL 2.0 (or later), and the WSDL definition (including namespace definition) stored in advance in the WSDL database 15 and the WSDL generated by the WSDL generation unit 12 A difference from the definition (WSDL of the REST message specification) is obtained for the REST message transmission source system, and the difference is stored as an additional WSDL definition in the WSDL database 15 for the REST message transmission source system.

また、処理判定部13は、REST API受信部11により受信されたRESTメッセージの処理状態(ステート)を状態管理データベース16に格納し、さらに、RESTメッセージ受信先システムからの応答に応じて、状態管理データベース16やポリシーデータベース17を参照し、その後の処理を実行する。処理判定部13における処理については、後で詳細に説明する。   In addition, the processing determination unit 13 stores the processing state (state) of the REST message received by the REST API receiving unit 11 in the state management database 16, and further performs state management according to a response from the REST message receiving destination system. The database 16 and the policy database 17 are referred to and subsequent processing is executed. The process in the process determination unit 13 will be described in detail later.

REST API送信部14は、RESTメッセージやWSP10の内部での処理結果を送信する。   The REST API transmission unit 14 transmits a REST message and a processing result inside the WSP 10.

WSDLデータベース15は、トランザクションで用いられるRESTメッセージをWSDL2.0(以降)の枠組みを使って事前に仕様化し、WSDL定義としてRESTメッセージ送信元システムごとに予め格納しており、また、処理判定部13により求められた差分を追加WSDL定義としてRESTメッセージ送信元システム対応に格納する。各RESTメッセージ送信元システムについてのWSDL定義の共通部分は、共通に格納しておいてもよい。RESTメッセージは、WebサービスのURL、オペレーションコマンド、RESTメッセージの構造を含む。   The WSDL database 15 pre-specifies the REST message used in the transaction using the framework of WSDL 2.0 (or later) and stores it in advance as a WSDL definition for each REST message transmission source system. The difference obtained by the above is stored as an additional WSDL definition corresponding to the REST message source system. The common part of the WSDL definition for each REST message source system may be stored in common. The REST message includes the URL of the Web service, the operation command, and the structure of the REST message.

状態管理データベース16は、トランザクションの状態遷移およびRESTメッセージやそのWSDL定義の情報を格納する。この情報は、WSP10が送信したオペレーションコマンドやそのWSDL定義(メッセージ内容)、WSP10が送信したオペレーションコマンドに対する受信先システムからの応答(正常応答,例外(エラー)の返信,無応答)、送信元と受信先の組と状態遷移履歴(正常終了,異常終了シーケンス)を含む。   The state management database 16 stores transaction state transitions, REST messages, and information on their WSDL definitions. This information includes the operation command sent by WSP10, its WSDL definition (message content), the response from the receiving system to the operation command sent by WSP10 (normal response, exception (error) reply, no response), Includes receiver group and state transition history (normal end, abnormal end sequence).

ポリシーデータベース17は、受信されたRESTメッセージに対して、WSP10がその後に行う処理についてのポリシーを格納している。   The policy database 17 stores a policy for processing that the WSP 10 performs thereafter on the received REST message.

図5は、WSP10における処理の一例を示すフローチャートである。以下、その処理を図1および図2を参照して説明する。   FIG. 5 is a flowchart showing an example of processing in WSP10. Hereinafter, the process will be described with reference to FIGS.

まず、システムA〜Dの何れか1つを要求コマンド送信元システムとし、他の1つを要求コマンド受信先システムとして、要求コマンド送信元システムから要求コマンドのRESTメッセージ(以下では単に「要求コマンド」と称することがある)が送出される。   First, any one of the systems A to D is a request command transmission source system and the other one is a request command reception destination system, and a request command REST message (hereinafter simply referred to as “request command”) from the request command transmission source system. May be called).

WSP10は、S11で、要求コマンドを受信し、S12では、それをRESTメッセージ仕様のWSDL(WSDL定義)に変換し、要求コマンドと共に次の処理(S13:処理判定部13)に与える。なお、WSDLは、RESTメッセージの変換が可能なWSDL2.0(以降)とする。以上は、REST API受信部11およびWSDL生成部12が行う処理である。   The WSP 10 receives the request command in S11, converts it into a REST message specification WSDL (WSDL definition) in S12, and gives it to the next process (S13: process determination unit 13) together with the request command. Note that the WSDL is WSDL 2.0 (or later) that can convert REST messages. The above is the processing performed by the REST API reception unit 11 and the WSDL generation unit 12.

以下は、処理判定部13が行う処理である。処理判定部13では、まず、S13で、RESTメッセージが例外メッセージ、すなわちエラーメッセージであるか否かを判定する。この場合、RESTメッセージは要求コマンドであり、エラーメッセージでないので、S13では、例外メッセージでないと判定される。したがって、この場合、要求コマンドおよびそのWSDL定義が、S14に与えられる。   The following is a process performed by the process determination unit 13. The process determination unit 13 first determines whether or not the REST message is an exception message, that is, an error message, in S13. In this case, since the REST message is a request command and not an error message, it is determined in S13 that it is not an exception message. Therefore, in this case, the request command and its WSDL definition are given to S14.

S14では、WSDLデータベース15に事前に格納されているWSDL定義とWSDL生成部12により生成されたWSDL定義を比較する。この比較処理は、エラーメッセージが受信された場合の処理でないので、ここでは比較処理(正常系)と記している。   In S14, the WSDL definition stored in advance in the WSDL database 15 is compared with the WSDL definition generated by the WSDL generation unit 12. Since this comparison processing is not processing when an error message is received, it is described here as comparison processing (normal system).

WSDLデータベース15には、トランザクションで用いられるRESTメッセージのWSDL定義が事前に構成されて、RESTメッセージ送信元システムごとに格納されている。WSDL定義の比較や後述するWSDL定義の追加は、RESTメッセージ送信元システム対応に行う。   In the WSDL database 15, a WSDL definition of a REST message used in a transaction is configured in advance and stored for each REST message transmission source system. Comparison of WSDL definitions and addition of WSDL definitions described later are performed for the REST message source system.

S14での比較処理(正常系)の後、S15では、比較処理の結果の差分の有無を判定する。ここで差分がないと判定された場合には、S18に進む。S18では、ポリシーデータベース17に予め格納されているポリシーに従って最終処理判定を行う。   After the comparison process (normal system) in S14, in S15, it is determined whether or not there is a difference as a result of the comparison process. If it is determined that there is no difference, the process proceeds to S18. In S18, final processing determination is performed according to the policy stored in the policy database 17 in advance.

ポリシーデータベース17には、受信されたRESTメッセージが要求コマンドである場合、内容を変更せずに要求コマンド受信先システムに転送するというポリシーが格納されている。したがって、この場合、要求コマンドを、S14,S15,S18,S19を通して、内容変更することなく要求コマンド受信先システムに転送する。この際、要求コマンドの送信元と受信先システムの対、要求コマンドおよびそのWSDL定義と共に、S18での最終処理判定の結果を遷移履歴として状態管理データベース16に蓄積する。   The policy database 17 stores a policy that, when the received REST message is a request command, it is transferred to the request command receiving system without changing the contents. Therefore, in this case, the request command is transferred to the request command receiving destination system through S14, S15, S18, and S19 without changing the contents. At this time, the result of the final processing determination in S18 is stored in the state management database 16 as a transition history together with the request command transmission source and destination system pair, the request command and its WSDL definition.

要求コマンド送信元システムのAPI仕様が拡張された場合、S15で、差分があると判定される。この場合には、その差分を、WSDLデータベース15に格納されているWSDL定義に対する追加WSDL定義して格納する。WSDLデータベース15に格納されたWSDL定義により、RESTメッセージ送信元システムを受信側とした場合に対応できる仕様が分かる。   When the API specification of the request command transmission source system is expanded, it is determined in S15 that there is a difference. In this case, the difference is stored as an additional WSDL definition for the WSDL definition stored in the WSDL database 15. From the WSDL definition stored in the WSDL database 15, the specifications that can be handled when the REST message source system is the receiving side can be understood.

次に、再度、S14で比較処理(正常系)する。この比較処理(正常系)の結果、S15では差分がないと判定されるので、要求コマンドを、S14,S15,S18,S19を通して、内容変更することなく要求コマンド受信先システムに転送する。この際、要求コマンドおよびそのWSDL定義と共に、S18での最終処理判定の結果を遷移履歴として状態管理データベース16に蓄積する。なお、以上のS18までは、処理判定部13が行う処理であるが、S19は、REST API送信部14が行う処理である。   Next, comparison processing (normal system) is performed again in S14. As a result of this comparison processing (normal system), since it is determined that there is no difference in S15, the request command is transferred to the request command receiving system through S14, S15, S18, S19 without changing the contents. At this time, together with the request command and its WSDL definition, the result of the final processing determination in S18 is stored in the state management database 16 as a transition history. Note that the processing up to S18 described above is processing performed by the processing determination unit 13, but S19 is processing performed by the REST API transmission unit 14.

以上のように、WSP10は、要求コマンドにおけるWSDL定義がWSDLデータベース15に事前に格納されているWSDL定義と同じであれば、要求コマンドを、内容変更することなく要求コマンド受信先システムに転送する。また、要求コマンド送信元システムのAPI仕様が拡張されて、要求コマンドにおけるWSDL定義がWSDLデータベース15に事前に格納されているWSDL定義と異なっていれば、その差分をWSDLデータベース15のWSDL定義ファイルに追加してから、要求コマンドを、内容変更することなく要求コマンド受信先システムに転送する。この際、WSDLデータベース15は、要求コマンド送信元システムのAPI仕様のWSDL定義を更新しつつ格納する。また、状態管理データベース16は、要求コマンドの送信元と受信先システムの対、要求コマンドおよびそのWSDL定義と共に、最終処理判定の結果を遷移履歴として蓄積する。   As described above, if the WSDL definition in the request command is the same as the WSDL definition stored in advance in the WSDL database 15, the WSP 10 transfers the request command to the request command receiving system without changing the contents. If the API specification of the request command source system is expanded and the WSDL definition in the request command is different from the WSDL definition stored in advance in the WSDL database 15, the difference is stored in the WSDL definition file of the WSDL database 15. After the addition, the request command is transferred to the request command receiving system without changing the contents. At this time, the WSDL database 15 stores the updated WSDL definition of the API specification of the request command transmission source system. In addition, the state management database 16 stores the result of the final process determination as a transition history together with the request command transmission source and destination system pair, the request command and its WSDL definition.

要求コマンド受信先システムは、要求コマンドを受信し、それを理解できれば正常応答のRESTメッセージを返し、それを理解できなければ例外(エラー)のRESTメッセージを返す。また、何らの応答も返さない場合もある。   The request command receiving system receives the request command, returns a normal response REST message if it can be understood, and returns an exception (error) REST message if it cannot be understood. In some cases, no response is returned.

RESTメッセージ受信先システムは、受信したRESTメッセージを理解できれば、正常応答のRESTメッセージを返す。したがって、要求コマンド受信先システムが要求コマンドを理解できた場合、正常応答のRESTメッセージ(以下では単に「正常応答」と称することがある)が返される。   If the REST message receiving system can understand the received REST message, it returns a normal response REST message. Therefore, when the request command receiving system can understand the request command, a normal response REST message (hereinafter sometimes simply referred to as “normal response”) is returned.

この場合、WSP10は、正常応答を受信し、正常応答に対してはS12,S14,S15の処理を行わず、正常応答をそのまま最終処理判定(S18)に与える。すなわち、正常応答を、S14,S15,S18,S19を通して、内容変更することなく要求コマンド送信元システムに転送する。この処理を行うために、ポリシーデータベース17には、正常応答が受信された場合、その内容を変更せずに要求コマンド送信元システムに転送するというポリシーが格納されている。この際、状態管理データベース16には、要求コマンドとの対応が分かるようにして、要求コマンドの送信元と受信先システムの対、正常応答と共に、最終処理判定の結果を遷移履歴として蓄積する。   In this case, the WSP 10 receives the normal response, does not perform the processing of S12, S14, and S15 for the normal response, and gives the normal response as it is to the final processing determination (S18). That is, the normal response is transferred to the request command transmission source system through S14, S15, S18, and S19 without changing the contents. In order to perform this process, the policy database 17 stores a policy that when a normal response is received, the content is not changed but transferred to the request command transmission source system. At this time, the state management database 16 stores the result of the final processing determination as a transition history together with the normal response and the pair of the request command transmission source and the reception destination system so that the correspondence with the request command can be understood.

以上のように、WSP10は、正常応答を、内容変更することなく要求コマンド送信元システムに転送する。この際、状態管理データベース16には、要求コマンドの送信元と受信先(応答送信元)システムの対、RESTメッセージの内容と共に、最終処理判定の結果を遷移履歴として蓄積する。   As described above, the WSP 10 transfers the normal response to the request command transmission source system without changing the contents. At this time, the result of the final process determination is stored as a transition history in the state management database 16 together with the contents of the REST message and the pair of request command transmission source and reception destination (response transmission source) systems.

RESTメッセージ受信先システムは、受信したRESTメッセージを理解できなければ、例外(エラー)のRESTメッセージを返す。したがって、要求コマンド受信先システムが要求コマンドを理解できなかった場合、要求コマンド受信先システムから例外(エラー)のRESTメッセージ(以下では単に「エラーメッセージ」と称することがある)が返される。   If the REST message receiving system does not understand the received REST message, it returns an exception (error) REST message. Therefore, when the request command receiving destination system cannot understand the request command, an exception (error) REST message (hereinafter sometimes simply referred to as “error message”) is returned from the request command receiving destination system.

この場合、S13では、受信されたRESTメッセージは例外と判定されるので、S16に進む。S16では、WSDLロールバック処理を行う。WSDLロールバック処理は、例外(エラー)の原因となった前手順のRESTメッセージに基づく追加WDSL定義を削除する処理を意味する。このWSDLロールバック処理により、例外(エラー)の原因となった前手順のRESTメッセージに基づく追加が行われる前のWSDL定義が生成される。なお、WSDLデータベース15に要求コマンド送信元システムに対して格納されているWSDL定義は、該要求コマンド送信元システムを受信側とした場合に対応できる仕様を管理するためのものであるので、更新する必要はない。   In this case, in S13, since the received REST message is determined as an exception, the process proceeds to S16. In S16, WSDL rollback processing is performed. WSDL rollback processing means processing to delete the additional WDSL definition based on the REST message in the previous procedure that caused the exception (error). This WSDL rollback process generates the WSDL definition before addition based on the REST message of the previous procedure that caused the exception (error). The WSDL definition stored in the WSDL database 15 for the request command transmission source system is for managing specifications that can be handled when the request command transmission source system is the receiving side, and is updated. There is no need.

その上で、S17で、前手順のRESTメッセージのWSDL定義をWSDLロールバック処理後のWSDL定義と比較する。すなわち、要求コマンドのWSDL定義とそれに対する事前のWSDL定義を比較する。この比較処理は、エラーメッセージが受信された場合の処理であるので、ここでは比較処理(異常系)と記している。   Then, in S17, the WSDL definition of the REST message in the previous step is compared with the WSDL definition after the WSDL rollback process. That is, the request command's WSDL definition is compared with the prior WSDL definition. Since this comparison processing is processing when an error message is received, it is referred to as comparison processing (abnormal system) here.

次に、S18に進んで、最終処理判定を行う。ポリシーデータベース17には、受信メッセージが例外である場合のポリシーも格納されており、S18では、ポリシーデータベース17に格納されているポリシーに従って最終処理判定を行う。   Next, it progresses to S18 and a final process determination is performed. The policy database 17 also stores a policy when the received message is an exception. In S18, final processing determination is performed according to the policy stored in the policy database 17.

図5には、API仕様の拡張によりパラメータが追加・変更される場合やAPI仕様の拡張による要求コマンド自体が未サポートである場合を想定してのポリシーも図示している。   FIG. 5 also illustrates a policy assuming that parameters are added / changed by extending the API specification, or that the request command itself is not supported by extending the API specification.

具体的には、エラーメッセージが受信された場合にWSP10で実行する動作として、(1)差分がパラメータ1つの場合、当該パラメータを削除した要求コマンドを要求コマンド受信先システムに転送、(2)差分がパラメータ2つの場合、WSDLデータベース15と状態管理データベース16 を参照し、差分が2つ以下のシステムに要求コマンドを転送、(3)差分がパラメータ3つ以上の場合、要求コマンド送信元システムに例外(unsupported parameter)のRESTメッセージを返送、(4)要求コマンド自体が未サポートの場合、サポート可能なシステムに該要求コマンドを転送し、そのようなシステムがなければ例外(unsupported parameter)を要求コマンド送信元システムに返送、と定めている。なお、要求コマンドをサポート可能なシステムかどうかは、WSDLデータベース15を参照することにより分かる。   Specifically, when an error message is received, the WSP10 performs the following operations: (1) If the difference is one parameter, transfer the request command with the parameter deleted to the request command receiving system, (2) Difference If there are two parameters, refer to the WSDL database 15 and the state management database 16 and transfer the request command to a system with two or fewer differences. (3) If the difference is three or more parameters, the request command source system will receive an exception. Return (unsupported parameter) REST message, (4) If the request command itself is not supported, transfer the request command to a system that can support it, and if there is no such system, send an exception (unsupported parameter) request command It is determined that it will be returned to the original system. Whether the system can support the request command can be determined by referring to the WSDL database 15.

(1)の場合には、S18では、前手順の要求コマンドのRESTメッセージから差分のパラメータ1つを削除し、S19を通して、要求コマンドを要求コマンド受信先システムに転送する。これにより、要求コマンド受信先システムから正常応答が返されることが期待できる。しかし、それでもなおエラーメッセージが返された場合には、要求コマンド送信元システムにエラーを返せばよい。   In the case of (1), in S18, one parameter of the difference is deleted from the REST message of the request command in the previous procedure, and the request command is transferred to the request command receiving system through S19. Thereby, it can be expected that a normal response is returned from the request command receiving system. However, if an error message is still returned, an error may be returned to the request command transmission source system.

(2)の場合には、S18およびS19を通して、差分が2つ以下のシステムに対して要求コマンドを転送する。これは、差分が2つ以下のシステムが正常応答する可能性が比較的大きいからである。それでもなおエラーメッセージが返された場合には、要求コマンド送信元システムにエラーを返せばよい。   In the case of (2), the request command is transferred to the system having two or less differences through S18 and S19. This is because there is a relatively high possibility that a system with two or less differences will respond normally. If an error message is still returned, an error may be returned to the request command source system.

(3)の場合には、何れのシステムも正常応答の可能性が小さいとしてエラーメッセージを要求コマンド送信元システムに返す。   In the case of (3), an error message is returned to the request command transmission source system because any system is unlikely to respond normally.

(4)の場合には、要求コマンドをサポート可能なシステムから正常応答が返される可能性が大である。そこで、S18,S19を通して、そのシステムに対して要求コマンドを転送し、何れのシステムからも正常応答が返されなければ、エラーメッセージを要求コマンド送信元システムに返す。   In the case of (4), there is a high possibility that a normal response is returned from a system that can support the request command. Therefore, the request command is transferred to the system through S18 and S19, and if no normal response is returned from any system, an error message is returned to the request command transmission source system.

要求コマンドを送信しても、要求コマンド受信先システムが何らの応答も返さない場合には、ポリシーデータベース17に「応答無し」に対して格納されているポリシーに従って要求コマンド送信元システムに未サポート・エラーメッセージを返す。これは、割り込み処理で実現できる。例えば、状態管理データベース16において要求コマンド送信後の経過時間をタイマで計時し、100mse経過しても応答がなければ、S16に無応答通知を送出し、要求コマンド送信元システムに未サポート・エラーメッセージを返す。なお、以上の場合も、状態管理データベース16には、要求コマンドの送信元と受信先システムの対や応答、最終処理判定の結果を遷移履歴として蓄積する。   If the request command receiving system does not return any response even after sending the request command, it is not supported by the request command sending system according to the policy stored in the policy database 17 for “no response”. Returns an error message. This can be realized by interrupt processing. For example, the elapsed time after sending the request command in the status management database 16 is counted with a timer. return it. Also in the above case, the state management database 16 accumulates a pair of request command transmission source and reception destination systems, responses, and results of final processing determination as a transition history.

以上実施形態について説明したが、本発明は、上記実施形態に限定されない。例えば、図5にはポリシーを具体的に図示したが、そのポリシーは、一例に過ぎず、(1),(2),(4)の少なくとも1つを含むようにポリシーを定めればよい。すなわち、要求コマンドに対してエラーメッセージを受信した場合、予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリメーションサーバに転送する((1)の場合)、あるいは受信した要求コマンドを、それに対して応答する可能性のあるアプリメーションサーバに転送する((2)または(4)の場合)、という処理を含むポリシーであれば、API仕様の拡張性に対処できる。   Although the embodiment has been described above, the present invention is not limited to the above embodiment. For example, although the policy is specifically illustrated in FIG. 5, the policy is merely an example, and the policy may be determined so as to include at least one of (1), (2), and (4). In other words, when an error message is received in response to a request command, the request command whose specification is partially changed is transferred to the request command receiving application server according to a preset policy (in the case of (1)) or received. If the policy includes a process of transferring the requested command to an application server that may respond to the request command (in the case of (2) or (4)), the extensibility of the API specification can be dealt with.

また、パラメータやコマンドだけでなく、引数の数の差などに応じてポリシーを定めてもよく、さらに、ポリシーを適宜可変設定できるようにしてもよい。   Further, the policy may be determined according to not only the parameters and commands but also the difference in the number of arguments, and the policy may be variably set as appropriate.

また、上記実施形態は、本発明を、WSP10を備えたWebサービスシステムとして実現したものであるが、本発明は、WSP10での処理方法、すなわち、WebサービスシステムにおけるWebサービスメッセージ仲介方法やWSP10の構成としても実現できる。また、上記実施形態では、各システム間で授受されるWebサービスメッセージがRESTメッセージであるとしたが、本発明は、他のWebサービスメッセージ、例えばSOAPメッセージなどの場合にも適用できる。   In the above embodiment, the present invention is realized as a Web service system including WSP10. However, the present invention is not limited to the processing method in WSP10, that is, the Web service message mediation method in WSP10 and WSP10. It can also be realized as a configuration. In the above embodiment, the Web service message exchanged between the systems is the REST message. However, the present invention can also be applied to other Web service messages such as a SOAP message.

10・・・WSP、11・・・REST API受信部、12・・・WSDL生成部、13・・・処理判定部、14・・・REST API送信部、15・・・WSDLデータベース、16・・・状態管理データベース、17・・・ポリシーデータベース   10 ... WSP, 11 ... REST API receiver, 12 ... WSDL generator, 13 ... Processing determination unit, 14 ... REST API transmitter, 15 ... WSDL database, 16 ...・ State management database, 17 ... Policy database

Claims (6)

各種機能を実行する複数のアプリケーションサーバと、
前記複数のアプリケーションサーバ間で授受されるWebサービスメッセージを仲介するプロキシサーバを備え、
前記複数のアプリケーションサーバの各々は、各自の機能を実行するためのプログラムとAPIを備え、
前記プロキシサーバは、アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するか、を選択的に実行する機能を有することを特徴とするWebサービスシステム。
Multiple application servers that perform various functions;
A proxy server that mediates a Web service message exchanged between the plurality of application servers,
Each of the plurality of application servers includes a program and an API for executing the respective functions,
The proxy server, upon receiving the Web service message from the application server, if it is a request command is transferred to the request command receiver Application areas Activation server without changing its contents, receives a normal response message thereto If you were transferred to the request command source application areas Activation server without changing its contents, when receiving an error message to the request command, it is preset according to the change of the WSDL definition for the request command selected according to the policy, or to forward the request command, which is a partial modification of the specifications in the request command receiver application areas Activation server, the request command received, or transferred to application areas Activation server that might respond to it, the JP that has a function of executing manner W eb service system shall be the.
複数のアプリケーションサーバで構成されるWebサービスシステムにおけるWebサービスメッセージ仲介方法であって、
Webサービスメッセージを受信する第1のステップと、
前記第1のステップにより受信されたWebサービスメッセージにおけるWSDL定義を生成する第2のステップと、
処理判定を行う第3のステップと、
前記第3のステップでの判定結果に従ってWebサービスメッセージを送信する第4のステップを有し、
前記第3のステップは、アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するかを、選択的に実行することを特徴とするWebサービスメッセージ仲介方法。
A web service message mediation method in a web service system composed of a plurality of application servers,
A first step of receiving a web service message;
A second step of generating a WSDL definition in the web service message received by the first step;
A third step of making a process decision;
A fourth step that sends Web service message according to the determination result in the third step,
The third step, when receiving the Web service message from the application server, if it is a request command is transferred to the request command receiver Application areas Activation server without changing its contents, normal response message thereto is received, and forwards the request command source application areas Activation server without changing its contents, when receiving an error message to the request command, preset according to the change of the WSDL definition for the request command following a policy, whether to forward the request command, which is a partial modification of the specifications in the request command receiver application areas Activation server, the request command received, whether to forward the app Ke Activation server that might respond to it , We, characterized by selectively executed Service message mediation method.
複数のアプリケーションサーバで構成されるWebサービスシステム用のプロキシサーバであって、
アプリケーションサーバからWebサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送し、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送し、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドを要求コマンド受信先アプリーションサーバに転送するか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送するか、を選択的に実行する機能を有することを特徴とするプロキシサーバ。
A proxy server for a web service system composed of a plurality of application servers,
When receiving the Web service message from the application server, if it is, if the request command, which forwards the request command receiver Application areas Activation server without changing its contents, receives a normal response message thereto, the contents transferred to the request command source application areas Activation server without changing, when receiving an error message to the request command, according to the policy that is set in advance according to the change of the WSDL definition for the request command, the specification either forward the request command obtained by partially modifying the request command receiver application areas Activation server, the request command received, selectively ability to run, or transferred to application areas Activation server that might respond to it Proxy server characterized by having
Webサービスメッセージを受信する受信部と、
前記受信部により受信されたWebサービスメッセージのうち、要求コマンドに対するWSDL定義を生成するWSDL生成部と、
処理判定部と、
前記処理判定部による判定結果に従ってWebサービスメッセージを送信する送信部と、
前記WSDL生成部により生成されたWSDL定義により、要求コマンド送信元アプリケーションサーバごとに事前に格納されているWSDL定義を更新して格納するWSDLデータベースと、
前記処理判定部での判定結果をトランザクションの状態遷移と共に蓄積する状態管理データベースと、
前記受信部により受信されたWebサービスメッセージとその受信に対して行う動作のポリシーを格納するポリシーデータベースを備え、
前記処理判定部は、前記WSDLデータベースに要求コマンド送信元アプリケーションサーバごとに事前に格納されている更新前のWSDL定義と前記WSDL生成部により生成されたWSDL定義との差分を要求コマンド送信元アプリケーションサーバ対応に求め、該差分を追加のWSDL定義として要求コマンド送信元アプリケーションサーバごとに前記WSDLデータベースに格納させることによりWSDL定義を更新させ、また、処理結果をトランザクションの状態遷移と共に前記状態管理データベースに蓄積させ、さらに、Webサービスメッセージを受信したとき、それが要求コマンドであれば、その内容を変更することなく要求コマンド受信先アプリーションサーバに転送させ、それに対して正常応答メッセージを受信した場合、その内容を変更することなく要求コマンド送信元アプリーションサーバに転送させ、要求コマンドに対してエラーメッセージを受信した場合には、該要求コマンドに対するWSDL定義の変更に応じて予め設定されたポリシーに従って、仕様を一部変更した要求コマンドの要求コマンド受信先アプリーションサーバに転送させるか、受信した要求コマンドを、それに対して応答する可能性のあるアプリーションサーバに転送させるかを、選択的に実行することを特徴とする請求項3に記載のプロキシサーバ。
A receiving unit for receiving a web service message;
Among the Web service messages received by the reception unit, a W SD L generation unit that generates a WSDL definition for a request command;
A process determination unit;
A transmission unit that transmits a Web service message according to a determination result by the processing determination unit;
The WSDL definitions generated by the W SD L generation unit, and WSDL database storing update the WSDL definitions stored in advance for each request command sending application server,
A state management database that accumulates determination results in the processing determination unit together with transaction state transitions;
A policy database for storing a web service message received by the receiving unit and a policy of an operation to be performed on the web service message;
The process determination unit calculates a difference between the WSDL definition before update stored in advance in the WSD L database for each request command transmission source application server and the WSDL definition generated by the WSDL generation unit. The WSDL is updated in response to the application server, and the difference is stored as an additional WSDL definition in the WSDL database for each request command source application server, and the state management database is updated with the processing result along with the transaction state transition. is accumulated, and further, when receiving the Web service message, if it is a request command, is transferred to the request command receiver application areas Activation server without changing its contents, it receives a normal response message thereto If the request command transmission is forwarded to the original Application areas Activation server without changing its contents, when receiving an error message to the request command, a preset policy in response to a change in the WSDL definition for the request command according, Luke is transferred specifications request command receiver application areas Activation server request command, which is a partial modification of the, or the request command received, is transferred to the application Ke Activation server that might respond to it, select 4. The proxy server according to claim 3, wherein the proxy server is executed automatically.
前記ポリシーは、要求コマンドのパラメータについては、その差分が1つの場合、当該パラメータを削除した要求コマンドを要求コマンド受信先アプリーションサーバに転送させ、その差分が2つの場合、差分が2つ以下のアプリーションサーバに要求コマンドを転送させるように設定され、要求コマンド自体については、要求コマンド自体が未サポートの場合、該要求コマンドを、それをサポート可能なアプリーションサーバに転送させるように設定されていることを特徴とする請求項に記載のプロキシサーバ。 The policy for the parameters of the request command, if the difference is one, is transferred a request command that deletes the parameter request command receiver Application areas Activation server, if the difference is two, the difference is 2 or less is set so as to transfer the request command to the application Ke Activation server, the request command itself, required when the command itself is unsupported, the request command, is set so as to forward it to supportable application areas Activation server The proxy server according to claim 4 , wherein: 前記ポリシーは、さらに、要求コマンドの引数の数の差に応じた、要求コマンドあるいは仕様を一部変更した要求コマンドの転送について設定していることを特徴とする請求項5に記載のプロキシサーバ。   The proxy server according to claim 5, wherein the policy further sets transfer of a request command or a request command in which a specification is partially changed in accordance with a difference in the number of arguments of the request command.
JP2013247874A 2013-11-29 2013-11-29 Web service system, Web service message mediation method, and proxy server Active JP6265473B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013247874A JP6265473B2 (en) 2013-11-29 2013-11-29 Web service system, Web service message mediation method, and proxy server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013247874A JP6265473B2 (en) 2013-11-29 2013-11-29 Web service system, Web service message mediation method, and proxy server

Publications (2)

Publication Number Publication Date
JP2015106272A JP2015106272A (en) 2015-06-08
JP6265473B2 true JP6265473B2 (en) 2018-01-24

Family

ID=53436335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013247874A Active JP6265473B2 (en) 2013-11-29 2013-11-29 Web service system, Web service message mediation method, and proxy server

Country Status (1)

Country Link
JP (1) JP6265473B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2022003911A1 (en) * 2020-07-02 2022-01-06

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185138A (en) * 2002-11-29 2004-07-02 Fujitsu Ltd Network service provision management system

Also Published As

Publication number Publication date
JP2015106272A (en) 2015-06-08

Similar Documents

Publication Publication Date Title
US11272044B2 (en) Concurrent process execution
JP4897872B2 (en) Service registry and related systems and methods
US10091086B2 (en) System and method for providing an application programming interface manager for use with a service bus runtime
EP2198579B1 (en) Protocol for enabling dynamic and hierarchical interconnection of autonomous federations of enterprise service
US8095670B2 (en) Protocol for enabling dynamic and scalable federation of enterprise service buses
JP5002647B2 (en) System and method for managing a network
US10637794B2 (en) Resource subscription method, resource subscription apparatus, and resource subscription system
JP6055201B2 (en) Server apparatus, system and control method thereof
CN111917838B (en) Micro-service-based processing method and device, storage medium and electronic device
JP2016005275A (en) Method and system for managing interconnection network
JP6265473B2 (en) Web service system, Web service message mediation method, and proxy server
TWI740210B (en) Method for terminal device management and server
Delsing et al. Arrowhead framework core systems and services
CN110063050B (en) Service scheduling method and system
CN105376275A (en) Software-defined network (SDN)-based data management method and system
WO2020224413A1 (en) Load control method, service provider nf, and service user nf
JP6096700B2 (en) API providing system
EP3050283B1 (en) Providing network management information in a communications network
Campos et al. Improving the scalability of DPWS-based networked infrastructures
JP6632394B2 (en) Network system, information processing apparatus, control method in information processing apparatus, and program
KR20090027124A (en) Sensor network management system, method of managing a sensor newtwork, and storage medium storing insructions performing the same
JP2016110175A (en) Client device, communication system, and data processing method and program
JP5566965B2 (en) Network management apparatus, network management method, and program
Lund et al. Information exchange in heterogeneous military networks
JP5592222B2 (en) Request relay method, request relay program, and relay device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160729

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170628

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170818

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171213

R150 Certificate of patent or registration of utility model

Ref document number: 6265473

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150