1

現在、クライアントが XML を Web サイトに送信するためのエンジンを作成しており、データを CFC に処理したいと考えています。これをテストするために、通常の CFM ファイルに単純なフォームを設定しました。

<!DOCTYPE html>
<html>
    <head>
        <title>Testing CFC processing</title>
    </head>
    <body>
        <cfsavecontent variable="variables.testxml">
            <?xml version="1.0" encoding="UTF-8"?>
            <xmlRequest><headers>data</headers><body><Notification><Result Success="1"/><participantID>[ID number]</participantID><transactionNumber>000</transactionNumber></Notification></body></xmlRequest>
        </cfsavecontent>
        <form method="post" action="[site url]/main.cfc?method=testData">
            <cfoutput>
                <textarea name="data" cols="150" rows="5">#variables.testxml#</textarea>
            </cfoutput>
            <br/>
            <input type="submit" name="submit" value="Process Test" />
        </form>
    </body>
</html>

main.cfc には、次のように設定された testData というメソッドがあります...

remote void function testData(data) {
    writeOutput(arguments.data);
}

このテストは、メソッドが送信されたデータを受信して​​いるかどうかを確認するためのものです。実行するとエラーにはなりませんが、フォームから XML データを出力しません。

適切な場合に備えて、コンポーネントを次のように宣言しています...

component  displayname="[name]" accessors="true" output="true"

CFC がフォーム データを受信して​​いない理由 (または、受信している場合はフォーム データを出力していない理由) がわかりません。誰でも何か援助を提供できますか?

4

1 に答える 1

2

私は答えを見つけました。上記のコードに問題がないことがわかりました。問題は Application.cfc にありました。コードが含まれていない onCFCRequest メソッドがありました。CFC がデータを受信するのをブロックしていました。Application.cfc から関数を削除した後、メソッドは問題なくデータを受信できました。

于 2014-09-09T15:53:00.743 に答える