well it was invalid according to the version that was specified...
this is afaik just WTP's xml validation reporting an error according to the DTD you have in your existing file.
I can half-agree with you on that. When I look more closely, I see that Sun put the 2.2 and 2.3 versions of that DTD in totally different paths. As a result, the 2.2 version was pointing at nothing while the 2.3 version pointed at a real DTD file. The 2.2 version should have been pointing to this URL:
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
Nonetheless, when I specified the wrong DTD URL, "Web descriptor file is corrupted : Element type "web-app" must be declared.:6:10." is not a terribly descriptive error if it is trying to say the DTD can't be found.
Just for fun, I fixed that reference to the 2.2 DTD to point at the correct URL as noted above. When I test that file in Dreamweaver, it reports the XML is valid. When I right-click and validate it in RHDS, it also reports it is valid, and when I run the JSF tool, it still reports the same error.
... which all leads me to wonder what the JSF parser is actually looking for?
report it in jira with examples of the files failing/working. thanks.