DFHWS2LS:WSDL 到高级语言的转换

DFHWS2LS 过程从 Web Service 描述中生成高级语言数据结构和 Web Service 绑定文件。 当您将 CICS® 应用程序公开为服务提供者或构造服务请求者时,可以使用 DFHWS2LS 。

DFHWS2LS 的作业控制语句

JOB
启动作业。
EXEC
指定过程名称 (DFHWS2LS)。
INPUT.SYSUT1 DD
指定输入。 输入参数通常在输入流中指定。 但是,可以在数据集中或分区数据集的成员中定义这些值。

符号参数

以下符号参数在 DFHWS2LS:

JAVADIR = 路径
指定 DFHWS2LS使用的 Java™ 目录的名称。 此参数的值将追加到 /usr/lpp/ 以生成完整路径名 /usr/lpp/ path
通常,您不指定此参数。 缺省值是在 JAVADIR 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。
PATHPREF = 前缀
指定用于扩展其他参数上使用的 z/OS® UNIX 目录路径的可选前缀。 缺省值为空字符串。
通常,您不指定此参数。 缺省值是在 PATHPREF 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。
TMPDIR = tmpdir
指定 z/OS UNIX 中 DFHWS2LS 用作临时工作空间的目录的位置。 作业运行所使用的用户标识必须具有对此目录的读和写许可权。
缺省值为 /tmp
TMPFILE = tmpprefix
指定 DFHWS2LS 用于构造临时工作空间文件的名称的前缀。
缺省值为 WS2LS
USSDIR = 路径
指定 UNIX 系统服务文件系统中 CICS TS 目录的名称。 此参数的值将追加到 /usr/lpp/cicsts/ 以生成完整路径名 /usr/lpp/cicsts/ path
通常,您不指定此参数。 缺省值是在 USSDIR 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。
SERVICE =
仅当 IBM® 支持人员指示时才使用此参数。

临时工作空间

DFHWS2LS 在运行时创建以下三个临时文件:
  • tmpdir / tmpprefix .in
  • tmpdir / tmpprefix .out
  • tmpdir / tmpprefix .err
其中:
  • tmpdir TMPDIR 参数中指定的值。
  • tmpprefix TMPFILE 参数中指定的值。
当未指定 TMPDIRTMPFILE 时,文件的缺省名称如下所示:
  • /tmp/WS2LS.in
  • /tmp/WS2LS.out
  • /tmp/WS2LS.err
重要信息: DFHWS2LS 不会锁定对 z/OS UNIX 文件或数据集成员的访问权。 因此,如果同时运行两个或多个 DFHWS2LS 实例,并使用相同的临时工作空间文件,那么当另一个作业正在使用这些文件时,没有任何内容可以阻止一个作业覆盖这些工作空间文件,从而导致不可预测的失败。

因此,建议您设计避免这种情况的命名约定和操作过程。 例如,可以使用系统符号参数 SYSUID 来生成对单个用户唯一的工作空间文件名。 在作业结束之前,将删除这些临时文件。

重要信息: 实用程序将仅在缺省 USS shell 下运行。 如果您已根据 .profile 配置其他 shell (例如 bash shell) 以启动,那么该实用程序将无法运行,而不会发出任何错误消息。 如果使用其他 shell ,那么在运行实用程序之前,必须更改 .profile 的配置以使用缺省 USS shell。

DFHWS2LS 的输入参数

读取语法图跳过可视语法图PDSLIB= 值PDSCP= 值REQMEM= 值RESPMEM= 值LANG=COBOLLANG=PLI-ENTERPRISELANG=PLI-OTHERLANG=CLANG=CPPSTRUCTURE=(请求,响应)PGMNAME= 值URI= 值PGMINT=CHANNELCONTID= 值PGMINT=COMMAREATRANSACTION= 名称USERID= 标识MAPPING-LEVEL=1.0MAPPING-LEVEL=1.1MAPPING-LEVEL=1.2高级数据映射(映射级别 1.2 和更高级别)MAPPING-LEVEL=2.0MAPPING-LEVEL=2.1高级数据映射(映射级别 2.1 和更高级别)MAPPING-LEVEL=2.2高级数据映射 (映射级别 2.2 及更高版本)MAPPING-LEVEL=3.0DATETIME=PACKED15DATETIME=STRINGDATA-TRUNCATION=DISABLEDDATA-TRUNCATION=ENABLEDMAPPING-LEVEL=4.0高级数据映射 (映射级别 4.0 及更高版本)MAPPING-LEVEL=4.1高级数据映射 (映射级别 4.1 及更高版本)MAPPING-LEVEL=4.2高级数据映射(映射级别 4.2 和更高级别)MAPPING-LEVEL=4.3高级数据映射 (映射级别 4.3 及更高版本)MAPPING-OVERRIDES=SAME-AS-MAPPING-LEVELHYPHENS-AS-UNDERSCORESLESS-DUP-NAMESNO-ARRAY-NAME-INDEXINGUNDERSCORES-AS-HYPHENSMINIMUM-RUNTIME-LEVEL=MINIMUMMINIMUM-RUNTIME-LEVEL=1.0MINIMUM-RUNTIME-LEVEL=1.1MINIMUM-RUNTIME-LEVEL=1.2MINIMUM-RUNTIME-LEVEL=2.0MINIMUM-RUNTIME-LEVEL=2.1高级数据映射 (运行时级别 2.1 及更高版本)MINIMUM-RUNTIME-LEVEL=2.2高级数据映射 (运行时级别 2.2 及更高版本)MINIMUM-RUNTIME-LEVEL=3.0高级数据映射 (运行时级别 3.0 及更高版本)MINIMUM-RUNTIME-LEVEL=4.0高级数据映射 (运行时级别 4.0 及更高版本)MINIMUM-RUNTIME-LEVEL=4.1高级数据映射 (运行时级别 4.1 及更高版本)MINIMUM-RUNTIME-LEVEL=4.2高级数据映射 (运行时级别 4.2 及更高版本)MINIMUM-RUNTIME-LEVEL=4.3高级数据映射 (运行时级别 4.3 及更高版本)MINIMUM-RUNTIME-LEVEL=CURRENTDATA-SCREENING=ENABLEDDATA-SCREENING=DISABLED HTTPPROXY=域名 (domain name)IP地址: 端口号 HTTPPROXY-USERNAME= 值 HTTPPROXY-PASSWORD= 值 BINDING= 值CCSID= 值NAME-TRUNCATION=RIGHTNAME-TRUNCATION=LEFTLOGFILE= 值OPERATIONS= 值SYNCONRETURN=NOSYNCONRETURN=YESWSBIND= 值WSDL= 值WSDL-SERVICE= 值WSRR-SERVER= 方案 ://域名 (domain name)IP地址: 端口号  WSRR-NAME= 值WSRR-NAMESPACE= 值WSRR-USERNAME= 值WSRR-PASSWORD= 值WSRR-VERSION= 值SSL-KEYSTORE= 值SSL-KEYPWD= 值SSL-TRUSTSTORE= 值SSL-TRUSTPWD= 值1WIDE-COMP3=FULLWIDE-COMP3= 否WIDE-COMP3= YES
高级数据映射(映射级别 1.2 和更高级别)
读取语法图跳过可视语法图CHAR-VARYING=NOCHAR-VARYING=NULLCHAR-VARYING=YESCHAR-VARYING-LIMIT=32767CHAR-VARYING-LIMIT= 值CHAR-MULTIPLIER=1CHAR-MULTIPLIER= 值DEFAULT-CHAR-MAXLENGTH=255DEFAULT-CHAR-MAXLENGTH= 值DEFAULT-FRACTION-DIGITS=3DEFAULT-FRACTION-DIGITS= 值
高级数据映射(映射级别 2.1 和更高级别)
读取语法图跳过可视语法图INLINE-MAXOCCURS-LIMIT=1INLINE-MAXOCCURS-LIMIT= 值
高级数据映射 (映射级别 2.2 及更高版本)
读取语法图跳过可视语法图PDSMEM= 值
高级数据映射 (运行时级别 2.1 及更高版本)
读取语法图跳过可视语法图XML-ONLY=FALSEXML-ONLY=TRUE
高级数据映射 (运行时级别 3.0 及更高版本)
读取语法图跳过可视语法图WSADDR-EPR-ANY=FALSEWSADDR-EPR-ANY=TRUE
高级数据映射(映射级别 4.2 和更高级别)
读取语法图跳过可视语法图ADDITIONAL-PROPERTIES-DEFAULT=FALSEADDITIONAL-PROPERTIES-DEFAULT=TRUEADDITIONAL-PROPERTIES-MAX=UNBOUNDEDADDITIONAL-PROPERTIES-MAX= 值ADDITIONAL-PROPERTIES-SIZE=255ADDITIONAL-PROPERTIES-SIZE= 值
备注信息:
  • 1 设置 WSRR-SERVER 参数时可以指定的每个 WSRR 参数只能指定一次。

参数使用

  • 您可以按任何顺序指定输入参数。
  • 每个参数必须在新行开始。
  • 参数及其连续字符 (如果使用) 不得超出第 72 列; 第 73 至 80 列必须包含空格。
  • 如果参数太长,无法适合单行,请在行尾使用星号 (*) 字符来指示该参数在下一行继续。 将星号视为参数的一部分之前的所有内容 (包括空格)。 例如:
    WSBIND=wsbinddir*
    						/app1
    等同于
    WSBIND=wsbinddir/app1
  • 行的第一个字符位置中的 # 字符是注释字符。 将忽略该行。
  • 行的最后一个字符位置中的逗号是可选的行分隔符,将被忽略。

参数描述

ADDITIONAL-PROPERTIES-DEFAULT = { true | false }
指示是否将未显式声明支持 其他属性 的 JSON 模式对象解释为支持这些对象。 其他 JSON 属性是 JSON 对象中未在 JSON 模式中预定义的任何属性。 这些属性通常作为意外的额外数据被数据转换机制拒绝。 如果 ADDITIONAL-PROPERTIES-DEFAULT 设置为 TRUE,或者如果 JSON 模式显式地为对象设置 additionalProperties:true ,那么将在生成的副本中分配空间以保存此类值。 应用程序可以使用副本中的关联字段与这些值进行交互。

可以在 4.2 或更高的映射级别使用此参数。

ADDITIONAL-PROPERTIES-MAX = { 0-20 | 无界 }
指示支持这些属性的 JSON 对象支持的 其他属性 数。 请参阅 ADDITIONAL-PROPERTIES-DEFAULT。 生成的副本将包含适用于寻址任何其他属性的结构。 缺省情况下,不会对受支持的属性数施加最大约束。 副本以与没有约束的数组相似的方式生成,并使用容器。 此参数可用于应用可与 INLINE-MAXOCCURS-LIMIT 参数组合使用的最大约束,以导致为最大属性数分配固定长度数组,从而避免需要容器。

可以在 4.2 或更高的映射级别使用此参数。

ADDITIONAL-PROPERTIES-SIZE = { 16-32767 | 255 }
指示每个 JSON 附加属性的最大大小。 如果 JSON 对象支持 ADDITIONAL-PROPERTIES-DEFAULT定义的其他属性,那么生成的副本将具有绑定以支持最多由 ADDITIONAL-PROPERTIES-MAX指定的数目的属性。 缺省情况下,每个附加属性支持的最大值为 255 个字符。 将在生成的副本中生成该大小的字段。 可以通过设置 ADDITIONAL-PROPERTIES-SIZE 参数来定制此大小。 例如,将处理发现包含以下属性的 JSON 对象:

"example": { "notes": "this extra property was not defined in the JSON Schema" }

如果已生成副本以支持其他属性,那么该完整值将传递到应用程序以进行处理。 该值以属性键前的前导引号开头,并以属性值中的尾部右花括号结尾。 在此示例中,大约有 100 个字符。 用于 ADDITIONAL-PROPERTIES-SIZE 的值必须足够大,以容纳可能出现的最大此类值。 如果分配的缓冲区对于处理的值太小,那么将生成错误响应。

可以在 4.2 或更高的映射级别使用此参数。

BINDING =
如果 Web Service 描述包含多个 <wsdl:Binding> 元素,请使用此参数指定要用于生成语言结构和 Web Service 绑定文件的元素。 指定在 Web Service 描述中的 <wsdl:Binding> 元素上使用的 name 属性的值。
CCSID =
指定在运行时用于对应用程序数据结构中的字符数据进行编码的 CCSID。 此参数的值将覆盖 LOCALCCSID 系统初始化参数的值。 value 必须是 Java 和 z/OS 转换服务支持的 EBCDIC CCSID (请参阅 z/OS Unicode Services User 's Guide and Reference )。 如果未指定此参数,那么将使用系统初始化参数中指定的 CCSID 对应用程序数据结构进行编码。

可以将此参数与任何映射级别配合使用。

CHAR-MULTIPLIER = { 1 | value }
指定当映射级别为 1.2 或更高时允许每个字符使用的字节数。 该参数的可以是范围 1 - 2147483647 中的一个正整数。 所有基于非数字字符的映射均受到该倍数的限制。 二进制字段、数字字段、区位及压缩十进制字段不受该倍数的限制。

该参数可能很有用,例如,如果您打算使用 DBCS 字符,其中您可能选择使用乘数 3,以在运行时允许每个双字节字符周围的潜在移入和移出字符中包含空格。

当您设置 CCSID=1200(指示 UTF-16)时,CHAR-MULTIPLIER 的有效值仅有 24。 使用 UTF-16时,缺省值为 2 。 当您期望应用程序数据包含需要 1 UTF-16 编码单元的字符时,请使用 CHAR-MULTIPLIER=2 。 如果希望应用程序数据包含需要 2 UTF-16 编码单元的字符,请使用 CHAR-MULTIPLIER=4
注:CHAR-MULTIPLIER 设置为 1 并不排除使用 DBCS 字符,将其设置为 2 也不排除使用 UTF-16 代理对。 但是,如果经常使用宽字符,那么某些有效值将无法符合已分配字段。 如果使用更大的 CHAR-MULTIPLIER 值,那么已分配字段中可能存储比 XML 中有效字符数更多的字符。 请务必注意符合相应的范围限制。
CHAR-VARYING = { NO | NULL | YES }
指定当映射级别为 1.2 或更高时如何映射可变长度字符数据。 可变长度二进制数据类型始终与容器或可变结构建立映射。
注: 如果 PGMINT 设置为 COMMAREA ,那么可变长度字符串无法映射到容器中,并且此参数无效。

如果不指定此参数,那么缺省映射取决于指定的语言。

您可以选择以下选项:

可变长度字符数据映射为定长字符串。
NULL
可变长度字符数据映射为以 null 结束的字符串。
YES
可变长度字符数据映射到 PL/I 中的 CHAR VARYING 数据类型。 在 COBOL , C 和 C++ 语言中,可变长度字符数据映射到包含两个相关元素 (data-length 和 data) 的等效表示。
CHAR-VARYING-LIMIT = { 32767 | value }
指定当映射级别为 1.2 或更高时映射到语言结构的二进制数据和可变长度字符数据的最大大小。 如果字符或二进制数据大于在该参数中指定的值,那么它将与容器建立映射,且该容器的名称将被用在生成的语言结构中。 该值的范围为 0 到 32767 字节(缺省值)。
CONTID =
在服务提供者中,指定用于保存用于表示 SOAP 消息的顶级数据结构的容器的名称。

CICS 传递到目标应用程序的容器的长度大于请求容器和响应容器的长度。

DATA-SCREENING = { ENABLED | DISABLED }
指定是否筛选应用程序提供的数据以查找错误。
ENABLED
将应用程序提供的与语言结构不一致的任何运行时数据视为错误,并发出消息 DFHPI1010 。 系统会向应用程序返回错误响应。
DISABLED
应用程序提供的运行时数据中与语言结构不一致的值将被缺省值替换。 例如,零替换数字字段中的错误值。 未发出消息 DFHPI1010 ,并且将向应用程序返回正常响应。 此功能可用于避免从未初始化的输出字段中生成的 INVALID_PACKED_DEC 和 INVALID_ZONED_DEC 错误响应。
DATA-TRUNCATION = { DISABLED | ENABLED }
指定在固定长度字段结构中是否容许可变长度数据:
DISABLED
如果数据小于 CICS 期望的固定长度,那么 CICS 将拒绝截断的数据并发出错误消息。
ENABLED
如果数据小于 CICS 期望的固定长度,那么 CICS 会容许截断的数据,并将缺失的数据作为空值处理。
DATETIME = { PACKED15 | STRING }
指定如何将 <xsd:dateTime> 元素映射到语言结构。
PACKED15
缺省值是将任何 <xsd:dateTime> 元素作为时间戳记进行处理并映射到 CICS ABSTIME 格式。
字符串
<xsd:dateTime> 元素作为文本进行处理。
DEFAULT-CHAR-MAXLENGTH = { 255 | value }
当映射级别为 1.2 或更高时,指定映射的字符数据的缺省数组长度,其中不包含 Web Service 描述文档中的长度。 该参数的值可以是范围 1 - 2147483647 中的一个正整数。
DEFAULT-FRACTION-DIGITS = { 3 | value }
指定要在 XML 十进制模式类型上使用的缺省小数位数。 缺省值为 3。 对于 COBOL ,有效范围为 0-17 ,如果正在使用参数 WIDE-COMP3 ,那么有效范围为 0-30。 对于 C 或 PLI ,有效范围为 0-30。
HTTPPROXY = { 域名 : 端口号 | IP 地址 : 端口号 }
如果 WSDL 包含对位于因特网上的其他 WSDL 文件的引用,并且运行 DFHWS2LS 的系统使用代理服务器来访问因特网,请指定域名或 IP 地址以及代理服务器的端口号。 例如:
HTTPPROXY=proxy.example.com:8080

在其他情况下,不需要此参数。

HTTPPROXY-PASSWORD =
如果运行 DFHWS2LS 的系统使用 HTTP 代理服务器访问因特网,而 HTTP 代理服务器使用基本认证,那么指定必须与 HTTPPROXY-USERNAME 配合使用的 HTTP 代理密码。 仅当您还指定了 HTTPPROXY时,才能使用此参数。
HTTPPROXY-USERNAME =
如果运行 DFHWS2LS 的系统使用 HTTP 代理服务器来访问因特网,而 HTTP 代理服务器使用基本认证,那么指定必须与 HTTPPROXY-PASSWORD 配合使用的 HTTP 代理用户名。 仅当您还指定了 HTTPPROXY时,才能使用此参数。
INLINE-MAXOCCURS-LIMIT = { 1 | value }
指定是否根据 maxOccurs 属性使用内联变量重复内容。 内联映射的可变重复内容与所生成语言结构的其余部分一起存放在当前容器中。 可变重复内容分两个部分进行存储,一部分作为存储数据出现次数的计数器,另一部分作为存储每次出现的数据的数组。 可变重复内容的备用映射是基于容器的映射,该映射会存储数据出现次数以及存放数据的容器的名称。 在单独的容器中存储数据会对性能造成影响,这些影响可能会使内联映射成为首选。

INLINE-MAXOCCURS-LIMIT 参数仅在映射级别 2.1 起可用。 INLINE-MAXOCCURS-LIMIT 的值可以是范围 0 - 32767 中的一个正整数。 值 0 指示不使用内联映射。 值 1 确保可选元素进行内联映射。 如果 maxOccurs 属性的 value 大于 INLINE-MAXOCCURS-LIMITvalue ,那么将使用基于容器的映射; 否则将使用内联映射。

在决定是否希望以内联方式映射可变重复列表时,请考虑重复数据的单个项的长度。 如果极少出现长度较长的情况,那么首选基于容器的映射;如果多次出现长度较短的情况,那么首选内联映射。

LANG = COBOL
指定高级语言结构的编程语言为 COBOL。
LANG = PLI-ENTERPRISE
指定高级语言结构的编程语言为 Enterprise PL/I。
LANG = PLI-OTHER
指定高级语言结构的编程语言为 Enterprise PL/I 以外的 PL/I 级别。
LANG = C
指定高级语言结构的编程语言为 C。
LANG = CPP
指定高级语言结构的编程语言为 C++。
LOGFILE =
DFHWS2LS 将其活动日志和跟踪信息写入的文件的标准 z/OS UNIX 名称。 DFHWS2LS 创建文件,但不创建目录结构 (如果该文件尚不存在)。

通常,您不使用此文件,但如果迂到 DFHWS2LS问题, IBM 服务组织可能会请求此文件。

MAPPING-LEVEL = { 1.0 | 1.1 | 1.2 | 2.0 | 2.1 | 2.2 | 3.0 | 4.0 | 4.1 | 4.2| 4.3}
指定 DFHWS2LS 在生成 Web Service 绑定文件和语言结构时使用的映射级别。 您可以选择以下选项:
1.0
此映射级别是缺省值。 Web Service 绑定文件和语言结构是使用 CICS TS 3.1 映射级别生成的。
1.1
XML 属性以及 <list><union> 数据类型将映射到语言结构。 最大长度超过 32,767 字节的字符和二进制数据将映射到容器。 容器名称是在语言结构中创建的。
1.2
使用 CHAR-VARYINGCHAR-VARYING-LIMIT 参数来控制在运行时映射和处理字符数据的方式。 如果未指定其中任一参数,那么最大长度小于 32,768 字节的二进制和字符数据将映射到除 C++ 以外的所有语言的 VARYING 结构,其中字符数据将映射到以 null 结束的字符串。
2.0
CICS TS 3.2 或更高版本的区域中使用此映射级别,以利用语言结构与 Web Service 绑定文件之间的映射的增强功能。
2.1
将此映射级别用于具有 APAR PK59794或更高版本的区域 CICS TS 3.2 ,用于 <xsd:any>xsd:anyType 支持,用于映射内联 INLINE-MAXOCCURS-LIMIT 参数的可变重复内容的选项,以及对 <xsd:sequence><xsd:choice><xsd:all>上的 minOccurs= "0 " 的支持。
2.2
将此映射级别与具有 APAR PK69738 或更高版本的区域 CICS TS 3.2 配合使用,以利用以下支持:
  • 具有固定值的元素
  • 增强了对 <xsd:choice> 元素的支持
  • 抽象数据类型
  • 抽象元素
  • 替换组
3.0
将此映射级别用于 CICS TS 4.1 或更高版本的区域。 在此映射级别,可以将时间戳记转换为 CICS ABSTIME 格式。
4.0
如果要使用 UTF-16,请将此映射级别与 CICS TS 5.2 或更高版本的区域配合使用。
4.1
对于可集群阵列支持,请将此映射级别与具有 APAR PI67641或更高版本的 CICS V5.2 区域配合使用。
4.2
将此映射级别与具有 APAR PI86039或更高版本的 CICS TS 5.4 区域配合使用。
4.3
将此映射级别与具有 APAR PI88519或更高版本的 CICS TS 5.4 区域配合使用。

有关映射级别的更多信息,请参阅 CICS 助手的映射级别

MAPPING-OVERRIDES = { SAME-AS-MAPPING-LEVEL | HYPHENS-AS-UNDERSCORES | LESS-DUP-NAMES | NO-ARRAY-NAME-INDEXING | UNDERSCORES-AS-HYPHENS }
指定在生成语言结构时是否覆盖指定映射级别的缺省行为。
注: 可以在逗号分隔的列表中使用任何子选项。 这些选项不是互斥的; 它们是组合的和无序的。
与映射级别相同
此参数生成与映射级别相同的样式的语言结构。 这是缺省值。
连字符即下划线
仅适用于 PL/I。 此参数将 WSDL 文档中的任何连字符转换为下划线而不是字符 X ,以提高生成的 PL/I 语言结构的可读性。 有关更多信息,请参阅 XML 模式到 PL/I 映射
LESS-DUP-NAMES
该参数将生成非结构化结构字段名称,名称末尾带 _value 以支持对字段的直接引用。 例如,在以下 PLI 语言结构中,当指定 MAPPING-OVERRIDES = LESS-DUP-NAMES 时,级别 12 字段 streetName 以 _value 作为后缀:
09 streetName,
12 streetName CHAR(255) VARYING
UNALIGNED,
12 filler BIT (7),
12 attr_nil_streetName_value BIT (1),
生成的结构如下:
09 streetName,
12 streetName_value CHAR(255) VARYING
UNALIGNED,
12 filler BIT (7),
12 attr_nil_streetName_value BIT (1),
NO-ARRAY-NAME-建立索引
仅适用于 COBOL 和 Enterprise PL/I。 确保数组中的字段名称仅在较高级别结构的作用域内唯一。
UNDERSCORES-AS-HYPHENS
此选项在映射级别 4.0自动启用。
仅适用于 COBOL。 此参数将 WSDL 文档中的任何下划线转换为连字符,而不是字符 X ,以提高生成的 COBOL 语言结构的可读性。 如果发生任何字段名称冲突,那么将对字段进行编号以确保其唯一。 有关更多信息,请参阅 XML 模式到 COBOL 映射
MINIMUM-RUNTIME-LEVEL = { MINIMUM | 1.0 | 1.1 | 1.2 | 2.0 | 2.1 | 2.2 | 3.0 | 4.0 | 4.1 | 4.2 | 4.3|CURRENT }
指定可将 Web Service 绑定文件部署到的最低 CICS 运行时环境。 如果选择的级别与指定的其他参数不匹配,那么将收到错误消息。 您可以选择以下选项:
最小值
将根据您选择的参数自动分配 CICS 的最低可能运行时级别。
1.0
生成的 Web Service 绑定文件成功部署到未应用 APAR PK15904 和 PK23547 的 CICS TS 3.1 区域中。 某些参数在此运行时级别不可用。
1.1
生成的 Web Service 绑定文件成功部署到至少应用了 APAR PK15904 的 CICS TS 3.1 区域中。 可以将映射级别 1.1 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
1.2
生成的 Web Service 绑定文件成功部署到同时应用了 APAR PK15904 和 PK23547 的 CICS TS 3.1 区域中。 可以将映射级别 1.2 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
2.0
生成的 Web Service 绑定文件成功部署到 CICS TS 3.2 或更高版本的区域中。 可以将映射级别 2.0 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
2.1
生成的 Web Service 绑定文件成功部署到具有 APAR PK59794 或更高版本的 CICS TS 3.2 上的区域中。 可以将映射级别 2.1 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
2.2
生成的 Web Service 绑定文件成功部署到具有 APAR PK69738 或更高版本的 CICS TS 3.2 区域中的区域。 通过此运行时级别,可以将映射级别 2.2 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
3.0
生成的 Web Service 绑定文件成功部署到位于 CICS TS 4.1 或更高版本的区域中。 通过此运行时级别,可以将映射级别 3.0 或更低版本用于 MAPPING-LEVEL 参数。 某些参数在此运行时级别不可用。
4.0
生成的 Web Service 绑定文件成功部署到位于 CICS TS 5.2 或更高版本的区域中。 通过此运行时级别,可以将映射级别 4.0 或更低版本用于 MAPPING-LEVEL 参数。 可以在此级别使用任何可选参数。
4.1
生成的 Web Service 绑定文件成功部署到具有 APAR PI67641或更高版本的 CICS TS 5.2 上的区域中。 通过此运行时级别,可以将映射级别 4.1 或更低版本用于 MAPPING-LEVEL 参数。
4.2
生成的 Web Service 绑定文件成功部署到具有 APAR PI86039或更高版本的 CICS TS V5.4 区域中。 通过此运行时级别,可以将映射级别 4.2 或更低版本用于 MAPPING-LEVEL 参数。
4.3
生成的 Web Service 绑定文件成功部署到具有 APAR PI88519或更高版本的 CICS TS 5.4 区域中。 通过此运行时级别,可以将映射级别 4.3 或更低版本用于 MAPPING-LEVEL 参数。
CURRENT
生成的 Web Service 绑定文件将成功部署到与您用于生成 Web Service 绑定文件的运行时级别相同的 CICS 区域中。
NAME-TRUNCATION = { LEFT | 右边 }
指定是从左侧还是右侧截断 XML 元素名称。 CICS Web Service 助手将 XML 元素名称截断为指定的高级语言的相应长度; 缺省情况下,将从右侧截断名称。
OPERATIONS =
对于 Web Service 请求者应用程序,指定用于生成 Web Service 绑定文件的 Web Service 描述中有效 <wsdl:Operation> 元素的子集。 每个 <wsdl:Operation> 元素都用空格分隔; 如果需要,列表可以跨多行。 可以将此参数用于 WSDL 1.1 和 WSDL 2.0 文档。
PDSCP =
指定在 REQMEMRESPMEM 参数中指定的分区数据集成员中使用的代码页,其中 value 是 CCSID 编号或 Java 代码页编号。 如果未指定此参数,那么将使用 z/OS UNIX System Services 代码页。 例如,可以指定 PDSCP = 037
PDSLIB =
指定包含生成的高级语言的分区数据集的名称。 用于请求和响应的数据集成员分别在 REQMEMRESPMEM 参数中指定。
PDSMEM =
指定 DFHWS2LS 用于生成将包含抽象数据类型的高级语言结构的分区数据集成员的名称的 1 到 6 字符前缀。 通过向前缀追加数字来生成成员名,最大成员名长度为 8 个字符。

在映射级别 2.2 或更高版本上使用此参数来命名与抽象数据类型关联的语言结构。 如果省略了 PDSMEM 参数,那么将使用 REQMEM 参数中的值来命名抽象数据类型的语言结构。

PGMINT = { CHANNEL | COMMAREA }
对于服务提供者,指定 CICS 如何将数据传递到目标应用程序:
CHANNEL
CICS 使用通道接口将数据传递到目标应用程序。
COMMAREA
CICS 使用通信区域将数据传递到目标应用程序。

在服务请求者中使用 DFHWS2LS 的输出时,将忽略此参数。

当目标应用程序处理请求时,它必须使用相同的机制返回响应。 如果在通信区域中接收到请求,那么必须在通信区域中返回响应; 如果在容器中接收到请求,那么必须在容器中返回响应。 CICS 传递到目标应用程序的通信区域或容器的长度大于请求通信区域或容器以及响应通信区域或容器的长度。

PGMNAME =
指定 CICS PROGRAM 资源的名称。
当 DFHWS2LS 用于生成将在服务提供程序中使用的 Web Service 绑定文件时,必须提供此参数。 它指定将显示为 Web Service 的应用程序的资源名称。
当 DFHWS2LS 用于生成将在服务请求者中使用的 Web Service 绑定文件时,请省略此参数。
REQMEM =
指定 DFHWS2LS 用于生成将包含 Web Service 请求的高级语言结构的分区数据集成员的名称的 1 到 6 字符前缀:
  • 对于服务提供者,Web Service 请求是应用程序的输入。
  • 对于服务请求者, Web Service 请求是应用程序的输出。
DFHWS2LS 为每个操作生成一个分区数据集成员。 通过向前缀追加数字来生成成员名,最大成员名长度为 8 个字符。

虽然此参数是可选的,但如果 Web Service 描述包含请求的定义,那么必须指定此参数。

RESPMEM =
指定 DFHWS2LS 用于生成将包含 Web Service 响应的高级语言结构的分区数据集成员的名称的 1-to 6 字符前缀:
  • 对于服务提供者, Web Service 响应是应用程序的输出。
  • 对于服务请求者, Web Service 响应是应用程序的输入。
DFHWS2LS 为每个操作生成一个分区数据集成员。 通过向前缀追加数字来生成成员名,最大成员名长度为 8 个字符。

如果不涉及响应,请省略此参数; 即,对于单向消息。

SSL-KEYSTORE =
此可选参数指定密钥库文件的标准位置。
如果希望 Web Service 助手使用安全套接字层 (SSL) 加密在网络中与 IBM WebSphere® Service Registry and Repository (WSRR) 进行通信,请使用此参数。
SSL-KEYPWD =
此可选参数指定密钥库的密码。
如果希望 Web Service 助手使用安全套接字层 (SSL) 加密通过网络与 IBM WebSphere Service Registry and Repository (WSRR) 进行通信,请使用此参数。
SSL-TRUSTSTORE =
此可选参数指定信任库文件的标准位置。
如果希望 Web Service 助手使用安全套接字层 (SSL) 加密通过网络与 IBM WebSphere Service Registry and Repository (WSRR) 进行通信,请使用此参数。
SSL-TRUSTPWD =
此可选参数指定信任库的密码。
如果希望 Web Service 助手使用安全套接字层 (SSL) 加密通过网络与 IBM WebSphere Service Registry and Repository (WSRR) 进行通信,请使用此参数。
STRUCTURE = ( 请求 响应 )
仅对于 C 和 C++,指定如何生成请求和响应结构的名称。
生成的请求和响应结构的名称为 request nn response nn ,其中 nn 是为了区分每个操作的结构而生成的数字后缀。

如果省略了一个或两个名称,那么结构与从您指定的 REQMEMRESPMEM 参数生成的分区数据集成员名同名。

SYNCONRETURN = { NO | YES }
指定远程 Web Service 是否可以发出一个同步点。
远程 Web Service 不能发出一个同步点。 该值为缺省值。 如果远程 Web Service 发出一个同步点,那么它将发生 ADPL 异常终止。
YES
远程 Web Service 可以发出一个同步点。 如果选择 YES ,那么当控制从远程 Web Service 返回时,远程任务将作为单独的工作单元落实。 如果远程 Web Service 更新了一个可恢复的资源并且在返回资源后发生故障,那么将无法回退对该资源的更新。
TRANSACTION = 名称
在服务提供者中,此参数指定可启动管道的别名事务的 1-to 4 字符名称。 当使用 PIPELINE 扫描命令自动创建 URIMAP 资源时,此参数的值用于定义该资源的 TRANSACTION 属性。
可接受的字符:

A-Z a-z 0-9 $ @ # _ < >

URI =
在服务提供者中,此参数指定客户机用于访问 Web Service 的相对 URI。 CICS 使用从 DFHWS2LS创建的 Web Service 绑定文件生成 URIMAP 资源时指定的值。 该参数指定 URIMAP 定义所应用于的 URI 的路径部分。
在服务请求者中, 使用此参数指定目标 Web Service 的 URI。 CICS 不会为服务请求者生成 URIMAP 资源。 您可以定义自己的 URIMAP 资源,供服务请求者在向目标 Web Service 的 URI 发出客户机请求时使用。 当服务请求者发出 INVOKE SERVICE 命令时, CICS 使用 Web Service 描述中指定的 wsdl:port 中的 soap:address 位置 (如果存在)。 您可以覆盖此 URI ,并在 INVOKE SERVICE 命令上使用 URIMAPURI 选项来指定其他 URI。
USERID = 标识
在服务提供者中,此参数指定 1 到 8 字符的用户标识,可由任何 Web 客户机使用。 对于应用程序生成的响应或 Web Service ,将在此用户标识下附加别名事务。 此参数的值用于在使用 PIPELINE 扫描命令自动创建 URIMAP 资源时定义该资源的 USERID 属性。
可接受的字符:

A-Z a-z 0-9 $ @ #

WIDE-COMP3 = { FULL | NO | YES }
控制所生成的 COBOL 或 PL/I 语言结构中压缩十进制可变长度的最大大小。
full
对于 COBOL 和 PL/I。 DFHJS2LS 生成一个足以容纳所有有效值的压缩十进制字段。 最大大小为 31 位。 这是缺省值。
仅适用于 COBOL。 DFHJS2LS 在生成 COBOL 语言结构类型 COMP-3时,将压缩十进制变量长度限制为 18。 如果压缩十进制大小超过 18,那么将发出 DFHPI9022W 消息以指示所指定的类型被限制在总共 18 个数字。
YES
仅适用于 COBOL。 DFHJS2LS 在生成 COBOL 语言结构类型 COMP-3时支持最大大小 31。
注: NOYES 选项生成无法表示所有有效值的字段; FULL 选项可避免此问题。 但是, FULL 选项允许在压缩十进制字段中表示一些无效值。 例如,如果模式指示最多有 5 位数字,最多有 2 位小数,那么 FULL 选项将生成允许 7 位数字的压缩十进制字段,这将允许为有效值 (例如 25000 和 999.99) 提供空间,但也为某些无效值 (例如 9999.99) 提供空间。 使用 FULL 选项时,请注意不要在应用程序数据中生成无效值。
WSADDR-EPR-ANY = { TRUE | FALSE }
Specifies whether CICS transforms a WS-Addressing endpoint reference (EPR) into its components parts in the language structures or treats the EPR as an <xsd:any> type. Treating the EPR as an <xsd:any> type means that the WSACONTEXT BUILD API can use the EPR XML directly.
false
DFHWS2LS 的行为通常是将 XML 转换为高级语言结构。
TRUE
Setting this option to TRUE means that at run time CICS treats the whole EPR as an <xsd:any> type and places the EPR XML into a container that can be referenced by the application. 应用程序可以将 EPR XML 与 WSACONTEXT BUILD API 配合使用,以在寻址上下文中构造 EPR。
此参数仅在运行时级别 3.0 起可用。
有关使用此参数的更多信息,请参阅 DFHWS2LS 支持 WS-Addressing 所需的参数
WSBIND =
Web Service 绑定文件的标准 z/OS UNIX 名称。 DFHWS2LS 创建文件,但不创建目录结构 (如果该文件尚不存在)。 文件扩展名缺省为 .wsbind
WSDL =
包含 Web Service 描述的文件的标准 z/OS UNIX 名称。 文件名仅限于对 URL 有效的字符,尤其是不得包含任何 # 字符。 如果要使用 WSRR 来检索 WSDL 文档,那么此参数指定文件系统上将向其写入 WSDL 文档的本地副本的位置。
WSDL-SERVICE =
指定当 Web Service 描述包含绑定元素的多个 Service 元素时使用的 wsdl:Service 元素。 如果为 BINDING 参数指定值,那么为此参数指定的服务元素必须与指定的绑定元素一致。 可以将此参数与 WSDL 1.1 或 WSDL 2.0 文档配合使用。
WSRR-NAME =
指定要从 WSRR 中检索的 WSDL 文档的名称。 仅当指定了 WSRR-SERVER 参数时才使用此参数。
WSRR-NAMESPACE =
指定要从 WSRR 中检索的 WSDL 文档的名称空间。 您可以选择在指定 WSRR-SERVER 参数以完全限定 WSRR-NAME 参数中指定的 WSDL 文档名时使用此参数。
WSRR-PASSWORD =
如果必须输入密码才能访问 WSRR ,请使用此可选参数。
如果指定了 WSRR-USERNAME 参数,那么还必须指定此参数。
仅当指定了 WSRR-SERVER 参数时才使用此参数。
WSRR-SERVER = { 域名 : 端口号 | IP 地址 : 端口号 }
使用此参数可指定 IBM WebSphere Service Registry and Repository (WSRR) 服务器的位置。 如果指定了此参数,那么将使用 WSRR 参数验证。
WSRR-USERNAME =
如果需要指定用于访问 WSRR 的用户名,请使用此可选参数。 此用户名由 WSRR 用于设置所有者属性。
仅当指定了 WSRR-SERVER 参数时才使用此参数。
WSRR-VERSION =
指定要从 WSRR 中检索的 WSDL 文档的版本。 仅当指定了 WSRR-SERVER 参数时,才能使用此参数。
XML-ONLY = { TRUE | FALSE }
指定 CICS 是否将 SOAP 消息中的 XML 转换为应用程序数据。 使用 XML-ONLY 参数来编写处理 XML 本身的 Web Service 应用程序。
TRUE
CICS 不会对 XML 执行任何变换。 服务请求者或提供者应用程序必须直接使用 DFHWS-BODY 容器的内容,以在 XML 和高级语言之间映射数据。
false
CICS 将 XML 转换为高级语言。
此参数仅在运行时级别 2.1 起可用。

其他信息

  • 必须将用于运行 DFHLS2SC 的用户标识配置为使用 UNIX 系统服务。 用户标识必须具有对 CICS z/OS UNIX 文件结构和 PDS 库的读许可权以及对 LOGFILE WSBINDWSDL 参数上指定的目录的写许可权。
  • 用户标识必须具有足够大的存储器分配才能运行 Java。
  • JCL 的最大参数长度为 100 个字符。 可以使用 STDPARM 语句来增大此值。 有关更多信息,请参阅 z/OS UNIX System Services 用户指南

示例


//WS2LS JOB '
accounting information
',
name,MSGCLASS=A
// SET QT=''''
//JAVAPROG EXEC DFHWS2LS,
// TMPFILE=&QT.&SYSUID.&QT
//INPUT.SYSUT1 DD *
PDSLIB=//CICSHLQ.SDFHSAMP
REQMEM=CPYBK1
RESPMEM=CPYBK2
LANG=COBOL
LOGFILE=/u/exampleapp/wsbind/example.log
MAPPING-LEVEL=3.0
MAPPING-OVERRIDES=UNDERSCORES-AS-HYPHENS
CHAR-VARYING=NULL
INLINE-MAXOCCURS-LIMIT=2
PGMNAME=DFH0XCMN
URI=exampleApp/example
PGMINT=COMMAREA
SYNCONRETURN=YES
WSBIND=/u/exampleapp/wsbind/example.wsbind
WSDL=/u/exampleapp/wsdl/example.wsdl
/*