Web services z/OS如何调用web服务?
我有一个COBOL程序,需要从web服务获取数据。如果不使用CICS,我的最佳选择是什么?我认为C程序可以读取web服务并将其保存到文件中,然后COBOL可以读取该文件。COBOL可以调用web服务吗?数据大小约为300mb。请看一看。它建议为web服务创建一个C/C++包装器交互。尽管本文是针对iSeries的,但您可能能够在zSeries下使用BPXBATCH实现非常类似的东西Web services z/OS如何调用web服务?,web-services,cobol,mainframe,zos,Web Services,Cobol,Mainframe,Zos,我有一个COBOL程序,需要从web服务获取数据。如果不使用CICS,我的最佳选择是什么?我认为C程序可以读取web服务并将其保存到文件中,然后COBOL可以读取该文件。COBOL可以调用web服务吗?数据大小约为300mb。请看一看。它建议为web服务创建一个C/C++包装器交互。尽管本文是针对iSeries的,但您可能能够在zSeries下使用BPXBATCH实现非常类似的东西 基本上,他们建议在COBOL代码和与Web服务接口的C++代码之间使用C包装器。此解决方案允许COBOL以相对直接
基本上,他们建议在COBOL代码和与Web服务接口的C++代码之间使用C包装器。此解决方案允许COBOL以相对直接的方式调用C函数。C函数通过使用C++代理实现对Web服务的调用来模仿C++行为。 < P>如果您可以在您的站点使用java,从COBOL程序调用java来访问Web服务可能是一种选择。假设您正在使用企业cobol,请查看第6.44节的使用IBM TCP/IP“EZASOKET”模块 我在一家z/OS系统公司工作,该系统主要运行COBOL、批处理(JCL)和CICS。为了调用webservices,我们编写了一个模块来使用TCP/IP实现http1.0。带模块
- 埃扎斯克特
- GETHOSTBYNAME
- 插座
- 连接
- 写
- FCNTL
- 阅读
- 接近
- SELECTEX
- EZACIC04将EBCDIC转换为ASCII
- EZACIC05将ASCII转换为EBCDIC
- EZACIC06将字符转换为位掩码
- EZACIC08解码IP地址
- 您必须指定它是递归的
- 您必须导入这些类 类HelloJ是
- 您必须包括JNI。 联动部分。 复制JNI ***然后,您可以使用以下命令从过程部分的COBOL调用java:
- 可以从z/os上的COBOL程序调用java。
我们在公司里做过
“com.ibm.zos.batch.container.test.HelloJ”
类JavaException为“java.lang.Exception”
类BCDTranHelper是
“com.ibm.batch.spi.UserControlledTransactionHelper”
调用HelloJ“sayHello” 还可以查看Java异常检查*以了解如何处理异常 如果您想从z/os上的COBOL程序调用web服务,这非常有用 有关更多详细信息,请参阅此链接
如果您使用z/OS 2.1或更高版本,请使用z/OS客户端web支持工具包 查看SYS1.SAMPLIB(HWTHXCB1)中有关Cobol的示例
如果您的Cobol是在DB2DSN命令下运行的,那么您也可以使用SOAPHTTP*标量函数。CICS之所以在这里是verboten,有什么特别的原因吗?从批处理作业访问CICS服务非常容易。对此我将予以纠正,但。。。我认为可以从Java应用程序调用COBOL子例程(方法),但反过来不行。Java需要在JNI下运行,但COBOL仅在从Java调用时才需要它。如果中的顶级进程不是在JNI(即Java)下运行,则无法调用需要它的较低级别进程。这就是为什么z/os下的OO COBOL主线是不存在的(它们只能从Java程序调用)。