いいね!数

0

閲覧数
177

お世話になっております。

 

XPagesにてWebアプリケーションの開発をしています。

 

特定のXPageにjQueryおよびjQuery利用を前提としたオープンソースライブラリをリソースに追加し、

あるUIを生成しようとしています。

 

jQueryは他のXPageでも利用するので、

上記XPagesには、jQueryをリソースに追加しているカスタムコントロールを配置し、

更にjQuery利用を前提としたオープンソースライブラリを直接リソースに追加しています。

 

この状態で動作を確認すると、画面には何も表示されず、ブラウザのコンソールにはjQueryがロードされていない旨のエラーメッセージが表示されます。

Webインスペクタで生成されたHTMLドキュメントを確認すると、<head>タグ内には先にjQuery利用を前提としたオープンソースライブラリが記述されています。

試しにXPageに直接jQueryをリソースの先頭に追加すると、正常にUIが生成されましたので、

Dominoサーバーの自動処理であるリソースの追加順序に問題があることがわかりました。

 

この問題を解決するために、先にjQuery(≒カスタムコントロールのリソース)をリソースとして読み込みたいのですが、

登録されているリソースの読み込み順序を制御する方法はありませんでしょうか。

 

以上です。

サーバー情報: | クライアント情報: | 
カテゴリ:アプリ開発 - XPages | タグ:
  | 質問日時:2016/03/15 11:56:21

回答・コメント

いいね!数

1

自分が知る限りではXPagesに直接記載されたリソースのほうがカスタムコントロールのリソースより先に読み込まれてしまうのは制御できないと思います。

ですので、オープンソースライブラリを記述しているリソースも別カスタムコントロールに移してjQueryのカスタムコントロールと2つをXPagesに読み込ませる(jQueryを先に記述)という方法が手っ取り早いかと思います。

その他のやり方ですと、jQueryはDB全体で使うというのであればテーマに記述してしまう、という方法などでしょうか。。。

上記のどちらのアイデアも動作テストしていませんので検討違いでしたらお許しください。

 

 

 

回答日時:2016/03/15 12:30:13

いいね!数

1

$.ready() は使っていますか?

dojoも合わせて使っていると、jQueryの ready 動作が不安定になることがありました。

dojo.addOnLoad を使ってみてください。

回答日時:2016/03/16 9:39:07