いくつかのバックエンド システムと対話する必要がある金融アプリケーションに、いくつかの COBOL プログラムがあります。利用可能なインターフェースの 1 つは、Web サービスを介したものです。COBOL で書かれたプログラムは、Web サービスにリクエストを送信できますか?
6 に答える
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 プログラムからの Web サービス呼び出しをサポートしています。
ibm は現在、組み込み Websphere と呼ばれるテクノロジーを Java で実装しようとしています。IBM は、これがメインフレームに命を吹き込む唯一の方法であると信じています。
Delphi で WebService を作成し、COBOL DLL を呼び出すか、Delphi dll を呼び出して Web サービスと通信できることを知っています。
現在、Web サービス クライアントを作成しています。これは DLL であり、古い COBOL システムから呼び出します。
CICS を使用している場合は、そのためのメカニズムが組み込まれています。しかし、何らかの理由でそれを使用できないと仮定すると、IBM TCP/IP 'EZASOKET' モジュールを使用して HTTP クライアントを構築できます。
私は、主に COBOL、バッチ (JCL)、および CICS を実行する z/OS システムを使用する会社で働いています。Web サービスを呼び出すために、TCP/IP を使用して HTTP 1.0 を実装するモジュールを作成しました。モジュール付き
- エザソケット
- GETHOSTBYNAME
- ソケット
- 接続
- 書きます
- FCNTL
- 読んだ
- 近い
- セレクテックス
補足モジュール:
- EZACIC04 は EBCDIC を ASCII に変換します
- EZACIC05 は ASCII を EBCDIC に変換します
- EZACIC06 文字をビットマスクに変換
- EZACIC08 デコード IP アドレス
これは自分の会社のために書いたものなので、コードを公開することはできません。しかし、参考までに、モジュールを作成するのに 3 日かかりました (さらに、後で少しデバッグします)。
EZA モジュールの使用方法を知るには、IBM のリファレンスを読む必要があります。