I had the same problem when I was not connected to Internet.
I found the DTD's in the j2ee distribution from SUN. After you install it it will create a subdirectory /lib/dtds . All the DTD files will be there. I made a directory /dtd on my Apache docroot and I copied those files in that directory. After that I modified my "hosts" file so that java.sun.com points to 127.0.0.1 . Then I started my apache server. After that I could make the deployment because JBoss was able to find the DTD on my own machine thinking that it is java.sun.com .
I think you can also download only the necessary dtd files on your machine from java.sun.com .
can I ask you to "FAQ" this, put an entry in the FAQ forum with a summary of the post.
Also I seem to remember that the validation is now optional in 3.0 but I would have to check that.
But I'm connected to the internet, and has access to the DTD that I specified in my original mail, so it may not be the same reason as what bunel1 suggested.
My thought is, what web-app DTD version that JBoss 2.2.2 supports? Is it possible that the DTD and JBoss version incompatible?
Try changing the "DTD Web Application 2.3" bit to "DTD Web Application 2.2". This normally works for me when I have this problem