Tuesday, February 16, 2010

Facelets tag library not loading?

I got a weird and frustrating problem today with JSF 2.0, Facelets (aka PDL), and Tomcat. I installed PrimeFaces to my web application, and it's not working at all.

"Not working" in the sense that there are no error messages, and my PrimeFaces tags are output verbatim. In a sense, PrimeFaces became 'unresolved namespace' in my web app.

I tried turning on Facelets logging but failed (I'm not so good with java.util.logging), maybe because PDL uses a different logging configuration than the "legacy" Facelets for JSF 1.2.

After hours of research, it turned out that the problem was simple: my primefaces-2.0.0.jar file is corrupt!

I used Maven to manage dependencies and I didn't realize that it did not download successfully (blame my flaky Internet connection.)

The real problem is that Tomcat did not give any indication whatsoever that one of my JARs is corrupt. Ridiculous!