# 単一サービス・プロジェクトに影響を与えるリリース情報、既知の問題、制限事項、および回避策

## IMS SOAP ゲートウェイの単一サービス・プロジェクトにおける複数セグメント・メッセージのサポート

エンタープライズ・サービス・ツール IMSTM SOAP ゲートウェイの単一サービス・プロジェクトには、複数セグメント・メッセージ引き渡しプログラム (MPP) のサポートが含まれます。 以下のすべての前提条件が一般出荷可能になった時点で、Rational Developer for System z バージョン 7.5 で生成された成果物をデプロイできるようになります。

- IMS SOAP ゲートウェイ V10.2
- IMS V10R1 IMS Connect
- PTF for IMS V10R1 IMS Connect APAR PK69366
- Enterprise COBOL for z/OSR APAR PK65058 用の PTF

## IBM Rational Developer for System z の COBOL コンパイル済み XML 変換では、エラー検査が拡張されて、更新されたメッセージ番号 IGZ0280S から IGZ0298S および新規メッセージ番号 IGZ0299S から IGZ0303S が出される可能性がある。

問題: IBM Rational Developer for System z のエンタープライズ・サービス・ツールであるコンパイル済み XML 変換 (CICS、IMS、およびバッチ) の各ランタイムが、ボトムアップとミート・イン・ミドルのシナリオにおいて、戻りコード 280 から 303 で強制終了する可能性がある。コンバーターによって返される言語環境メッセージが最新の状態でないか、またはテキスト「例外メッセージの取得に失敗しました」がシステム・ログまたはコンソールに表示されます。

解決策: Rational Developer for System z の COBOL コンパイル済み XML 変換では、エラー検査が拡張されて、更新されたメッセージ番号 IGZ0280S から IGZ0298S および新規メッセージ番号 IGZ0299S から IGZ0303S が出される可能性があります。APAR PK65058 用の PTF を適用します。

## Web services for CICS シナリオにおける追加のマッピング・サポート

Web services for CICS シナリオには、追加のマッピング・レベルおよびランタイム・レベル (2.2) のサポートがあります。このレベルで生成された成果物を使用するには、APAR PK69738 を適用した CICSTS 3.2 が必要です。

## PL/I から XML タイプの派生に関する情報

トピック『PL/I から派生した XML タイプ』の『表 6 PL/I から XML タイプへ』は誤りなので、無視してください。

## コピーブックでは、「エンタープライズ・サービス・ツール」ウィザードがハングする

問題: 必要なコピーブックが解決しないと、「エンタープライズ・サービス・ツール」ウィザードはハングする。これが起きるのは、COBOL インポーター設定ページで、エラー・メッセージの言語が en_US 以外に設定されている場合です。

解決策: 「ウィンドウ」 > 「設定」 > 「インポーター」 > 「COBOL」 > 「その他の COBOL オプション」を選択して、エラー・メッセージの言語を変更します。

## ソース・ファイルのミート・イン・ミドル・インポート

問題: ミート・イン・ミドル開発シナリオでは、「ソース・ファイルのインポート」ウィザードで、「ファイル・システム」オプションによるインポートはサポートされていない。

回避策: 必要なファイルすべてを一般プロジェクトへコピーし、 ソース・ファイルのインポートウィザードで、「ワークスペース」を選択することによって、それらのファイルをインポートします。

## 古い WSDL/XSD ファイルおよび新規 WSDL/XSD ファイルでのボトムアップ競合

問題: ボトムアップ開発シナリオでは、生成された古いバージョンの WSDL ファイルと XSD ファイルを、新しく生成されたコンバーターで使用すると、実行時にエラーの原因となる可能性がある。例えば、出される可能性のあるランタイム・エラー・メッセージとして、以下のものがあります。

    IGZ0282S プログラム「PGMNAME」で XML からデータ構造への変換を完了できませんでした。これは、XML 文書のエレメント名がコンバーターによって認識されなかったためです。

解決策: コンバーターで生成された WSDL/XSD は、必ず各コンバーターと結合されている必要があります。

## COBOL COMP-3 (PACKED DECIMAL) タイプの XML スキーマ・データ型マッピング

問題: オンライン・ヘルプ・トピック「COBOL から派生した XML タイプ」で、COMP-3 (PACKED DECIMAL) の行は以下のように読む必要がある。

表 1. COBOL から XML タイプへの派生
COBOL タイプ | COBOL UsageValue + COBOL ModelType プロパティー | 対応する XSD タイプ
--- | --- | ---
packed-decimal、comp-3 -> packedDecimal | packedDecimal | 小数点が指定された場合:
    <xsd:simpleType>
    <xsd:restriction base="xsd:decimal">
       <xsd:minInclusive value="xx.x"/>
       <xsd:maxInclusive value="yy.y"/>
    </xsd:restriction>
    </xsd:simpleType>
小数点が指定されなかった場合:
    <xsd:simpleType>
       <xsd:restriction base="xsd:short">
         <xsd:minInclusive value="xxx"/>
         <xsd:maxInclusive value="yyy"/>
       </xsd:restriction>
    </xsd:simpleType>

## スキーマをインクルード、インポート、または再定義するリモート (z/OS Unix) WSDL ファイルのインポートが伴うトップダウン/ミート・イン・ミドル・シナリオはサポートされない

問題: エンタープライズ・サービス・ツール・プロジェクトで、スキーマをインクルード、インポート、または再定義する WSDL ファイル (元はリモート・ロケーションからインポートされたもの) を対象に、「新規サービス実装の作成 (トップダウン)」シナリオ、または「既存サービス・インターフェースのマップ (ミート・イン・ミドル)」シナリオを実行すると、エラーで失敗する。

回避策: 必要なファイルすべてをワークステーション、またはワークスペース内の一般プロジェクトへコピーし、「RMB」-「インポート」-「ソース・ファイル」を使用して、ローカルの WSDL ファイルを「Web Services for CICS プロジェクト」へインポートした後、トップダウン・シナリオを試行します。

## 単一サービス・ウィザードで生成される COBOL 変換ルーチンは z/OSのみで実行される

ワークステーション COBOL コンパイラーは、コンパイル時と実行時の両方で XML PARSE ステートメントをサポートしますが、単一サービス・ウィザードで生成される COBOL プログラムは、z/OS 環境でのみ稼働するように設計されています。

## XML エレメントのネストの深さ

問題: XML to 言語構造コンバーターが次の例外メッセージを戻す。

    IGZ0291S プログラム program-name で XML からデータ構造への変換を完了できませんでした。
    これは、XML エレメントのネストの最大深さを超えたためです。
    文字コンテンツ character-content が含まれているエレメント element-name でエラーが発生しました。
    (IGZ0291S XML to data structure conversion could not complete
    in program program-name because the maximum XML element
    nesting depth was exceeded. The error occurred at element
    element-name with character content character-content.)

回避策: XML to 言語構造コンバーターは、特定の XML エレメントのネストの深さを処理できませんでした。ネスト・レベルにはオリジナル COBOL 構造を上回る許容度がありますが、その許容度を超えることがあります。スキーマにないエレメントが要求 XML 文書に存在する場合、そのエレメントのネスト・レベルが深すぎると、このような状態が生じます。

## COBOL データ構造の FILLER 項目

問題: 名前のないグループおよびその基本項目は、親項目が基本項目と一緒にフィルタリングされてしまうため、データ構造選択ページまたは マッピング・セッション・エディターでの選択に使用できない。

回避策: COBOL データ構造を編集して、変換の必要なグループおよび/または基本データ項目に名前を付けてください。COBOL グループに名前を付けると、FILLER 以外の基本項目が選択可能になります。

## OPT コンパイラー・オプションの競合

問題: ドライバー・プログラムやコンバーター・プログラムで生成された PROCESS ステートメントの OPT コンパイラー・オプションが JCL の コンパイル・オプションに指定されていると、TEST オプションと競合する。

回避策: 生成された XML コンバーター・プログラムをデバッグしたい場合は、Web サービス・ウィザードの「生成オプション」ページで「コンパイラー関連設定の指定」グループ内の「最適化」チェック・ボックスを選択解除します。

## OCCURS DEPENDING ON 項目を含む COBOL グループの自動マッピング一致

問題: COBOL データ項目が ODO 項目か、COBOL データ項目に ODO 項目が含まれている場合は、マッピング一致アクションを行う前に その ODO オブジェクトを手動でマップしない限り、互換性のある XML 構造との「マッピング一致」アクションを実行できない。

回避策: マッピング一致アクションを実行する前に、マッピング規則に従って ODO オブジェクトを手動でマップしてください。(XML 文書では、COBOL ODO オブジェクト項目にマップされたエレメントは、対応する COBOL ODO サブジェクトにマップされた XML エレメントの前に出現する必要があります。)

## 「XML 使用可能化」ウィザードの特定テキスト入力フィールドにおける大/小文字の区別

問題: Windows 上の Eclipse でフォルダー名およびファイル名を入力するときに大/小文字が区別される。

回避策: フォルダー名およびファイル名を矛盾がないように入力してください。例えば、ワークベンチでフォルダー名が MyFolder と表示されている場合、フォルダー名を必要とする入力フィールドには必ず MyFolder と入力してください。例えば myfolder と入力すると、ツールはこの入力に対して無効または存在しないフォルダー名としてフラグを立てます。

## 無効ポインターによる無限ループの発生

問題: XML コンバーターまたはドライバーへのポインターとして非ヌルの無効なポインターが指定されると、無限ループが発生する。

回避策: XML コンバーターは、呼び出し元により渡されたヌル・ポインターを検出し、報告しようとします。非ヌルの無効のポインターの場合、XML コンバーターはたぶんこれに出会うと、保護例外 (SOC4) を戻します。

## SOAP for CICS および Web Services for CICS での DBCS データ・メンバーのサポート

エンタープライズ・サービス・ツールの単一サービス・プロジェクトで DBCS データ項目をサポートするには、要求 XML 文書と応答 XML 文書を UTF-16 または UTF-8 でエンコードする必要があります。 Web サービスのターゲット・ランタイムが CICS 用 SOAP の場合、UTF-8 または UTF-16 の XML を XML Converter Driver と交換するためのフィーチャーを構成します。Web Services for CICSランタイムは、デフォルトとして UTF-8 の XML をクライアントと交換しますが、XML Converter Driver は、CICS と XML を UTF-16 で交換します。UNICODE が必要な場合は、XML コンバーターには現時点で UTF-16 が最も有効が選択です。いずれのランタイムの場合も、UNICODE と DBCS ホスト・コード・ページ間の変換をサポートする変換イメージを使用して、UNICODE のための z/OS サポートを構成する必要があります。

## 「生成」 > 「XML ファイル」メニュー項目が XSD スキーマの制限を遵守しない

問題: 「生成」->「XML ファイル」メニュー項目が XSD スキーマの制限を順守しない。エンタープライズ・サービス・ツールで作成された XSD に対して XML ファイル生成 (Generate XML File) アクションを使用すると、 無効な XML ファイルの生成につながる可能性があります。

回避策: 生成された XML ファイルを編集し、タグの内容が XSD スキーマで指定されている制限に準拠するようにします。

## XML および Web サービスのバッチ・プロセッサー: 構成に無効な項目があると、XML はバッチ処理中に NULL ポインター例外を発生させることがある

問題: オプションの XML ファイル (Container.xml、PlatformProperties.xml、ServicesSpecification.xml) に無効な項目があると、 バッチ・プロセッサーの実行中に NULL ポインター例外が発生することがある。

回避策: オプションの XML ファイルの項目を正しい形式に修正します。

## XML および Web サービスのバッチ・プロセッサー: 入力言語ファイル・ロケーションのディレクトリーの指定

COBOL 入力ファイルのロケーションは、ドライブ指定で始まる絶対パス (例えば、C:¥mypath¥test) として 「importDirectory 」属性に指定できる。

絶対パスではなく、相対パスを指定したい場合 (例えば、xsebatch 構成ファイル内のファイルのロケーションをまったく変更せずに構成ファイルと COBOL ソース・コードを再配置できるようにするため) は、以下を実行する。

表 2.
ディレクトリー | 説明
--- | ---
`C:¥workspace¥account_details` | メイン・プロジェクト
`C:¥workspace¥account_details¥cobol_src` | インポートする COBOL ソース・ファイルがあるサブディレクトリー
`C:¥workspace¥account_details¥xsebatch_config` | xsebatch 用の XML 構成ファイルがあるサブディレクトリー

ここで、cobol_src ディレクトリー内の DFH0ACTD.cbl という名前の COBOL ソース・ファイルで以下の InputOutputMessage エレメントが使用できるようになる。

    <InputOutputMessage importFile="../cobol_src/DFH0ACTD.cbl"></InputOutputMessage>

または、xsebatch の呼び出し元と同じディレクトリー内に COBOL ソース・ファイルを配置することもできる。

## XML および Web サービスのバッチ・プロセッサー: 大/小文字混合のデータ名の指定

COBOL データ名が大/小文字を区別しない場合でも、XML ファイルの指定には大/小文字の区別を正確に指定する必要がある。 例えば、COBOL データ・ソースではデータ名が MY-Data である場合、サービスが指定する XML では、nativeTypeName 属性を nativeTypeid="MY-Data" と設定する必要がある。大/小文字を区別を正確に指定しないと、データ名が見つからず、使用可能な最初のレベル 01 のデータ名がデフォルトで使用される。

## LOW-VALUES および HIGH-VALUES 表意定数の制約事項

表意定数 LOW-VALUE(S) および HIGH-VALUE(S) を、単一サービス・ウィザードで使用される COBOL データ構造内に指定することができる。ただし、これら表意定数のセマンティックの意味は、単一サービス・ウィザードでは無視され、これらの「エンタープライズ・サービス・ツール」単一サービス・ウィザードが生成する成果物には反映されない。

## エンタープライズ・サービス・ツールの単一サービス・プロジェクト名の GB18030 文字

問題: エンタープライズ・サービス・ツールの単一サービス・プロジェクト名で GB18030 コード・ページの文字を使用すると、「エンタープライズ・サービス・ツール」単一サービス・ウィザードをプロジェクト内のファイルに対して実行するときにエラーが発生する。

回避策: エンタープライズ・サービス・ツールの単一サービス・プロジェクトに名前を付けるときは、GB18030 文字を使用しないでください。

## 一時ファイルがクリーンアップされない場合がある

問題: 「エンタープライズ・サービス・ツール」単一サービス・ウィザードを実行した後、一時ファイル (例えば、~DF45B.tmp) がエンタープライズ・サービス・ツールの単一サービス・プロジェクト・フォルダーに残ることがある。

回避策: 「エンタープライズ・サービス・ツール」単一サービス・ウィザードの実行後に、同じような名前のファイルがエンタープライズ・サービス・ツールの単一サービス・プロジェクトにある場合、そうしたファイルは削除してかまいません。

## 一時プロジェクトがクリーンアップされない場合がある

問題: 古いマッピング・ファイルのマイグレーション・プロセスの場合、参照されたマッピングされる側のソース・ファイルはマッピングする側のファイルと同じフォルダーになければならない。この要件が満たされないと、 マッピング・マイグレーション・ツールは「Resource [filename].mapping is not local」というエラー・メッセージを出して失敗します。

回避策: 「エンタープライズ・サービス・ツール」単一サービス・ウィザードの実行後に、同じような名前のプロジェクトがワークスペースにある場合、これらのプロジェクトは削除してかまいません。

## バージョン 6.0 マッピング・ファイル (.cmx ファイル) をマイグレーションするとき、.cmx ファイルで参照されるソース・ファイルが同じフォルダー内になければならない

問題: 古いマッピング・ファイルのマイグレーション・プロセスの場合、参照されたマッピングされる側のソース・ファイルはマッピングする側のファイルと同じフォルダーになければならない。この要件が満たされないと、 マッピング・マイグレーション・ツールは「Resource [filename].mapping is not local」というエラー・メッセージを出して失敗します。

回避策: 参照されたソース・ファイルを、マイグレーション対象のマッピング・ファイルと同じフォルダーに移動します。

## Web サービス・ウィザードでリモート・ロケーションを参照すると、ワークベンチがロックされる

問題: Web サービス・ウィザード・ページで ターゲット・フォルダー (コンバーター・フォルダー、WSDL フォルダー、または WSBIND フォルダー) の リモート・ロケーションを参照するとき、接続名が長い (例: ctfmvs08.rtp.raleigh.ibm.com) と 時間が長く掛かったり、ワークベンチがロックされることがある。

回避策: 接続名を ctfmvs08 のような短い名前に変更します。

## 生成された XML スキーマのグローバル・エレメント名が、解釈 XML 変換タイプとコンパイル済み XML 変換タイプとの間で矛盾する

問題: 解釈変換とコンパイル済み XML 変換のデフォルト世代により生成された XML スキーマ内の Web サービス・メッセージ・ルート要素名が一致しない。 コンパイル済み XML 変換の世代デフォルトを、解釈変換ケースに一致するように変更する必要があります。これについては、以下の「回避策」セクションに説明があります。これによってユーザーは、後に必要であれば、WSDL ファイルをリパブリッシュすることなく、また Web サービスのクライアントにおいてコード変更を行うことなく、変換タイプを解釈変換からコンパイル済み変換へ変更することが可能となります。

回避策: コンパイル済み XML 変換の成果物を生成する場合、ウィザードを使用して、解釈 XML 変換に一致するように ルート要素名を変更することができます。 新規オプション「ルート・エレメント名」は、「要求および応答 XML スキーマ・プロパティー」グループの「WSDL および XSD オプション」タブの「生成オプション」ページにあります。

例えば、COBOL グループ (A-B-C) は、メッセージ・ルート要素名が「a_b_c」という解釈変換成果物を生成します。 デフォルトのコンパイル済み変換成果物のルート要素名は「ABC」となります。 先に述べたように、ウィザードで「ABC」を「a_b_c」に変更して、解釈変換用に生成した WSDL に一致させることができます。

## 生成された XML コンバーター・ファイルの名前に DBCS 文字を使用できない

問題: z/OS では、区分データ・セット・メンバーの名前に DBCS 文字を使用できない。

回避策: XML コンバーター・ファイルの名前を指定するときには、DBCS 文字を除外します。また、ウィザードから提示されたデフォルト・ファイル名に、DBCS 文字が含まれていないことを確認してください。

親トピック: エンタープライズ・サービス・ツール - リリース情報