xp:link で onclick イベントを使用する際に問題が発生し、コンテンツを取得するために部分的な更新を実行するツールチップ ダイアログをポップアップするマウスオーバーを使用すると問題が発生します。ユーザーがリンクをクリックしたいときはいつでも、ツールチップがすでにポップアップしてそのコンテンツをロードしている可能性があります。リンクは別のページにリダイレクトされるため、コンテンツ ペインの部分的な更新イベントは中断されています。これにより、ほぼ毎回「xhr cancel」というエラーが発生します (Firebug などのブラウザーのコンソール内で確認できます)。
別のページにリダイレクトする前に contentpane を .cancel() しようとするなど、いくつかのことを試しましたが、おそらく tooltipDialog にあるために機能しないため、ハンドルを取得できません。
以下はコードの例です。Xpages Extension Library demo nsf (データで埋められた) 内の新しい xpage に入れてテストできます。リンクにカーソルを合わせて、ツールチップのコンテンツの読み込みが完了する直前に、リンクをクリックします。
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xe="http://www.ibm.com/xsp/coreex">
<xp:this.data>
<xp:dominoView var="view1" viewName="AllContacts"></xp:dominoView>
</xp:this.data>
<xp:br></xp:br>
<xp:br></xp:br>
<xp:link escape="true" text="Hover me" id="link1" style="margin-left:50px;"
value="/Core_DojoLayout.xsp">
<xp:this.onmouseover><![CDATA[tooltipTimerId = setTimeout ( "XSP.openTooltipDialog('#{id:tooltipDialog1}','#{id:link1}');", 500 );
]]></xp:this.onmouseover>
<xp:this.onmouseout><![CDATA[if (tooltipTimerId){
clearTimeout (tooltipTimerId);
}]]></xp:this.onmouseout>
</xp:link>
<xp:br></xp:br>
<xp:br></xp:br>
<xe:tooltipDialog id="tooltipDialog1">
<xe:djContentPane id="djContentPane1" refreshOnShow="false"
partialRefresh="true" preload="true">
<xp:repeat id="repeat1" rows="1000" value="#{view1}"
var="row">
<xp:text escape="true" id="computedField1"
value="#{row.FirstName}">
</xp:text>
  
<xp:text escape="true" id="computedField2"
value="#{row.LastName}">
</xp:text>
<xp:br></xp:br>
</xp:repeat>
</xe:djContentPane>
</xe:tooltipDialog>
</xp:view>