CobolプログラムのWebサービスを使用できますか?
-
03-07-2019 - |
質問
金融アプリケーションには、バックエンドシステムの一部とやり取りする必要があるCOBOLプログラムがいくつかあります。使用可能なインターフェースの1つは、Webサービスを介したものです。 Cobolで記述されたプログラムは、Webサービスにリクエストを送信できますか?
解決
Microfocus は、COBOLがWebサービスと対話できるようにするEnterprise Serverというツールを提供します。
COBOLプログラムAと別のCOBOLプログラムBがあり、Aがインターフェイスセクションを介してBを呼び出す場合、このツールを使用すると、BのインターフェイスセクションをWebサービスとして公開できます。
プログラムAの場合、クライアントプロキシを生成すると、AはWebサービスを介してBを呼び出すことができます。
もちろん、BにはWebサービスがあるため、他の種類のプログラム(コマンドライン、Windowsアプリケーション、Java、ASPなど)も呼び出すことができます。
他のヒント
COBOLを使用したことはありませんが、クイックGoogle検索からは可能に見えます。
これは役立つように見えますが、また、Cコードを介してWebサービスとCobolを統合する方法についても説明します。
これはどのプラットフォームですか? IBMのCICSは、EXEC CICS INVOKEを介したcobolプログラムからのwebservices invokationnnをサポートしています。
ibmは現在、組み込みWebsphereと呼ばれるテクノロジーをJavaで実装しようとしています。 IBMは、これがメインフレームに命を与える唯一の方法であると信じています。
DelphiでWebServiceを記述し、COBOL DLLを呼び出すことができるか、 Delphi dllを呼び出して、webserviceと通信します。
今、Webサービスクライアントを作成しています。これはDLLであり、古いCOBOLシステムから呼び出します。
CICSを使用していて、CICSを使用している場合、そのためのメカニズムが組み込まれています。しかし、何らかの理由でそれを使用できないと仮定すると、IBM TCP / IP「EZASOKET」モジュールを使用してHTTPクライアントを構築できます。
私は、主にCOBOL、バッチ(JCL)、およびCICSを実行しているz / OSシステムを持つ会社で働いています。 Webサービスを呼び出すために、TCP / IPを使用してHTTP 1.0を実装するモジュールを作成しました。モジュールを使用
- EZASOKET
- GETHOSTBYNAME
- ソケット
- CONNECT
- WRITE
- FCNTL
- 読む
- 閉じる
- SELECTEX
補足モジュール:
- EZACIC04はEBCDICをASCIIに変換します
- EZACIC05はASCIIをEBCDICに変換します
- EZACIC06文字をビットマスクに変換する
- EZACIC08はIPアドレスをデコードします
会社のためにこれを書いたので、私はただコードを配ることはできません。しかし、参考までに、モジュールを書くのに3日かかり(さらに少しデバッグします)、それはそれを開始するための例であり、それを部分的にハックする方法でした。
EZAモジュールの使用方法を知るには、IBMのリファレンスを読む必要があります。