views:

230

answers:

1

Hello

I've got a JSF app built with MyFaces 1.2.8, Facelets 1.1.14 and building it with Tomcat 6 through it's plugin in Eclipse Ganymede.

I've just installed the latest versions of the above libs and on build, the app deploys ok and the server goes to start and immediately I get this:

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

Googling this one points me towards this page the result of which is to disable the error handling of MyFaces and Facelets using this

    <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> 

and most importantly use this:

org.apache.myfaces.USE_ENCRYPTION

set to false. I don't want to do this but there's no other useful info. Does anyone else know whether there's a workaround for this problem? I've only recently migrated from mojarra and I don't want to have to go back.

Would downgrading MyFaces work do we think? I'm going to try it.

Thanks IA.

A: 

After scouting around, my own suggestion is to desist from using MyFaces in this situation, install the right Mojarra runtime to support the project you're doing, ensure you have all the jars installed correctly (which I didn't), double check your facelets configuration and read the manuals. It's a bit of a workaround using a different JSF implementation but it worked.

Mark Lewis