2

javascript式を使用して画像を表示する次のコードスニペットを持つXPageがあるとします。

<xp:image id="image1"><xp:this.url><![CDATA[#{javascript:"actn005.gif"}]]></xp:this.url></xp:image> 

actn005.gifは、現在のデータベースに画像リソースとして存在します。[メモでプレビュー]をクリックしてソースを取得すると、画像の場合は次のように表示されます。

<img id="view:_id1:image1" src="/xsp/Naveen/Experiments.nsf/xsp/actn005.gif" alt="" class="xspImage">

「Webブラウザでプレビュー」をクリックしてソースを取得すると、画像の場合は次のように表示されます。

<img id="view:_id1:image1" src="/Naveen/Experiments.nsf/actn005.gif" alt="" class="xspImage"> 

「PreviewinNotes」の場合、データベースのパスの前後にxspが追加されていることがわかります。私の質問はなぜですか?どちらの場合も問題なく画像が表示されます。しかし、画像をレンダリングするXPageがある場合は、それをXPage_Rendering_Image.xspと呼びます。そのため、XPageコード

<xp:image id="image1"><xp:this.url><![CDATA[#{javascript:"XPage_Rendering_Image.xsp"}]]></xp:this.url></xp:image> 

次のようにレンダリングされます:

<img id="view:_id1:image1" src="/xsp/Naveen/Experiments.nsf/xsp/XPage_Rendering_Image.xsp" alt="" class="xspImage"> 

そしてそれは失敗します!私は以前にこの質問をXPagesフォーラムに投稿し、次のような通常の画像タグを使用することを提案しました。

<img src="#{javascript:'XPage_Rendering_Image.xsp'}" alt="" class="xspImage" />.

<xp:image>しかし、タグを使用してこれを機能させる方法はありますか?これはバグですか?

4

2 に答える 2

2

(および他の多くの)希望どおりに機能しない場合がありますが、設計どおりに機能します。独自の画像ソースを提供する場合(XPage_Rendering_Image.xspはXAgentであると想定)、Extension APIを使用して、リソースレンダラーを提供する必要があります。または、フォーラムで提案されている標準のhtmlimgタグを使用します。NotesクライアントのXSPパス部分は、ローカルWebサーバーが、従来のクライアント部分ではなくXSPエンジンによってレンダリングされることを認識できるようにするために必要です。

更新:/ xsp /....URLはWebでも機能します。それがあなたが必要としているものです。

于 2012-02-20T17:08:04.410 に答える
1

これをバグと見なし、IBMによって修正してもらいたいと思います。また、この不一致に遭遇し、解決策が見つかりませんでした(クライアント/ブラウザーに基づく条件付きレンダリングはオプションではありません)。

たとえば、「$Icon」画像リソースへのネイティブリンクも機能しません。

于 2012-02-20T22:58:53.003 に答える