私のJSF 2.2アプリケーションでは、RichFaces 4.3.2 with を使用してAJAXリクエストを作成しようとしていました.
レンダリングされた HTML は次のとおりです。
<a href="#" id="x" name="x" onclick="RichFaces.ajax(x;,event,{x:x} );return false;">
問題は、リンクをクリックしても何も起こらず、Chrome コンソールにエラーが表示されることです。
Uncaught TypeError: Object #<Object> has no method 'ajax'
RichFaces をコンソールに入力すると、「Event、valueOf」などのオートコンプリート機能が表示されますが、特定の RichFaces 関数は表示されません。RichFaces ライブラリがまったく添付されていないように見えますが、その理由はわかりません。
なぜそれが起こっているのですか?
commandLink のコード:
<ui:repeat value="#{commonsOperations.newsList}" var="n">
<li>
<a4j:commandLink action="#{commonsOperations.setSelectedNews(n)}"
value="#{n.title}" render="content" />
</li>
</ui:repeat>
RichFaces ライブラリが正しくロードされなかった問題は、RichFaces と PrimeFaces の間の競合であることがわかりました。POM から PrimeFaces を削除すると、すべての RichFaces JavaScript ファイルが読み込まれます。