1

私は IBM Integration Bus v10 (以前は IBM Message Broker と呼ばれていました) を使用して、COBOL ルーチンを SOAP Web サービスとして公開しています。COBOL ルーチンは、MQ キューを介して IIB に統合されます。

一部の COBOL コピーブックを DFDL スキーマとして IIB にインポートしました。SOAP メッセージと DFDL メッセージ間のマッピングは正常に機能しています。

ただし、メッセージ・ツリーの直列化が必要なノード (例えば、FileOutput または MQ 要求) にメッセージが到達すると、次のエラーで失敗します。

"The PIF data could not be found for the specified application"

これは、例外のスタック トレースの最後の部分です。

RecoverableException
    File:CHARACTER:F:\build\slot1\S000_P\src\DataFlowEngine\TemplateNodes\ImbOutputTemplateNode.cpp
    Line:INTEGER:303
    Function:CHARACTER:ImbOutputTemplateNode::processMessageAssemblyToFailure
    Type:CHARACTER:ComIbmFileOutputNode
    Name:CHARACTER:MyCustomFlow#FCMComposite_1_5
    Label:CHARACTER:MyCustomFlow.File Output
    Catalog:CHARACTER:BIPmsgs
    Severity:INTEGER:3
    Number:INTEGER:2230
    Text:CHARACTER:Caught exception and rethrowing
    Insert
        Type:INTEGER:14
        Text:CHARACTER:Kcilmw20Flow.File Output
    ParserException
        File:CHARACTER:F:\build\slot1\S000_P\src\MTI\MTIforBroker\DfdlParser\ImbDFDLWriter.cpp
        Line:INTEGER:315
        Function:CHARACTER:ImbDFDLWriter::getDFDLSerializer
        Type:CHARACTER:ComIbmSOAPInputNode
        Name:CHARACTER:MyCustomFlow#FCMComposite_1_7
        Label:CHARACTER:MyCustomFlow.SOAP Input
        Catalog:CHARACTER:BIPmsgs
        Severity:INTEGER:3
        Number:INTEGER:5828
        Text:CHARACTER:The PIF data could not be found for the specified application
        Insert
            Type:INTEGER:5
            Text:CHARACTER:MyCustomProject

デプロイ可能な BAR ファイルに何かが欠けているようです。私のアプリケーションにはメッセージ フローがあり、すべての .xsd ファイル (DFDL) を持つ共有ライブラリに依存していると言うことが重要です。

Toolkit ウィザードを使用してスキーマを生成したので、スキーマは問題ないと思います。メッセージの解析もうまくいきます。問題はシリアル化のみです。

ここで何が欠けているか知っている人はいますか?

4

4 に答える 4

4

OutputRoot.Properties.MessageType には、DFDL スキーマ内のメッセージの名前が含まれている必要があります。さらに、DFDL スキーマが共有ライブラリーにある場合、OutputRoot.Properties.MessageSet にはライブラリーの名前が含まれている必要があります。

于 2015-11-20T15:07:58.803 に答える
0

同様の問題に直面しました。私の場合、DFDL ドメイン パーサー/フォーマットを使用してリモート システムからの HTTP 応答を解析する HttpRequest ノードを含むメッセージ フローで、このエラーがスローされました (指定されたアプリケーションの PIF データが見つかりませんでした)。ノードで同じパーサー ドメインとメッセージ タイプを「再選択」した後、ビルド/再デプロイすると問題が解決しました。IIB ツールキット内のプロジェクト参照関連の問題のようです。

于 2016-04-21T12:16:45.390 に答える