0

非常に奇妙な問題が発生しています。ローカル コンピューターの tomcat 6 で、JSF と Primefaces の下でアプリケーションを開発しました。すべてが完璧に機能します。しかし、アプリケーションをリモートの tomcat 6 (エンタープライズ RedHat Linux の下) にデプロイすると、primefaces が機能しなくなります。最も面白い部分: 応答には多くの時間がかかり、生成された html が返されます (したがって、ライフサイクルを呼び出しているように見えます)。ただし、コンポーネントはレンダリングされません (javascript 関数が混在する大量の HTML があります) - p:tabView およびその他のコンポーネントのコンテンツは、単純なテキスト行としてレンダリングされます。しかし、Javascriptに関しては、それは述べています - ReferenceError: PrimeFaces is not defined. Catalina のログ ファイルには何も記載されていません。

私はそれが何であるか分かりません。アイデアはありますか?

4

2 に答える 2

1

1) プロジェクトが Eclipse ビルド パスにどのような依存関係があるかを確認します。それらすべてがリモート サーバーで利用可能であることを確認します。ビルド パスのすべての依存関係は、生成している war ファイルの lib フォルダーにコピーする必要があります (Tomcat、jdk などのランタイムでない限り)。

2)web.xmlとfaces-config.xmlが、リモートにデプロイされたEclipseとwarで同じであることを確認します。

うまくいかない場合は、Eclipse の temp フォルダーを、展開している war と比較して、ローカルにあるすべてのものを含めることができます。

ワークスペースの下のEclipseでプロジェクトファイルを検索することで、ローカル戦争を見つけることができます

于 2013-03-02T16:23:09.770 に答える
0

問題は Tomcat のセキュリティでした。リダイレクトが許可されていなかったため、js ファイルはリンクにリストされていましたが、何も取得されませんでした。Tomcatを再インストールすることで問題は解決しました。

于 2013-03-06T11:42:38.893 に答える