-1

ボタンの後ろに SSJS コードがあります。ボタンをクリックすると、コードが別のデータベースにドキュメントを作成します。

ボタンをクリックすると問題なく動作しますが、Domino Admin CONsole を見ると、ボタンの背後にあるコードが 2 回動作することがわかります。ページを更新すると、再び動作すると思いますか? どうすれば防ぐことができますか?私が恋しいのは何ですか?

<xp:button value="Label" id="button1">

    <xp:eventHandler event="onclick" submit="true"
        refreshMode="complete">
        <xp:this.action><![CDATA[#{javascript:print("Before createNewDoc()");
createNewDoc();
print("After createNewDoc()");
}]]></xp:this.action>
    </xp:eventHandler></xp:button>

ボタンの背後にあるコード ビュー

4

1 に答える 1

1

などのイベントにprint ステートメントを追加してbeforePageLoad、どこで実行されているかを確認します。afterPageLoadまた、XPages OpenLog Logger や、完全なスタック トレースを出力できるその他のロギング フレームワークを使用する価値もあります。これにより、更新時にコードが 2 回実行されているかどうか、およびどこから実行されたかを特定できます。

ボタンからコードを 2 回実行する必要はありません。これはスクリプト ライブラリの SSJS 関数であると想定していますが、他の何かがそれを引き起こしている可能性があります。

于 2016-04-07T10:22:15.193 に答える