0

MyFaces 1.2.8、Facelets 1.1.14で構築されたJSFアプリがあり、Eclipse Ganymedeのプラグインを介してTomcat 6で構築しています。

上記のライブラリの最新バージョンをインストールしたところ、ビルド時にアプリが正常にデプロイされ、サーバーが起動し、すぐに次のようになります。

javax.servlet.ServletException: javax.crypto.BadPaddingException: Given final block not properly padded

これをグーグルで検索すると、このページが表示され、その結果、これを使用して MyFaces と Facelets のエラー処理が無効になります

    <context-param>
  <param-name>org.apache.myfaces.ERROR_HANDLING</param-name>
  <param-value>false</param-value>
 </context-param>
 <context-param>
  <param-name>facelets.DEVELOPMENT</param-name>
  <param-value>false</param-value>
 </context-param>
 <error-page>
  <exception-type>javax.servlet.ServletException</exception-type>
  <location>/error.jsp</location>
 </error-page> 

そして最も重要なのはこれを使用することです:

org.apache.myfaces.USE_ENCRYPTION

false に設定します。私はこれをしたくありませんが、他に役立つ情報はありません。この問題の回避策があるかどうかを他の誰かが知っていますか? 私は最近 mojarra から移行したばかりで、戻る必要はありません。

MyFaces のダウングレードは機能すると思いますか? やってみます。

ありがとうIA。

4

1 に答える 1

0

スカウトした後、私自身の提案は、この状況で MyFaces を使用することをやめ、実行中のプロジェクトをサポートする適切な Mojarra ランタイムをインストールし、すべての jar が正しくインストールされていることを確認し (私はしませんでした)、再確認することです。 facelets の設定とマニュアルを読んでください。これは、別の JSF 実装を使用したちょっとした回避策ですが、うまくいきました。

于 2010-03-06T10:29:17.237 に答える