For the webapps I\'m developing, I usually use the following files organization, since I think it respects the convention:
The web.xml needs to be in the WEB-INF directory. That's the only place app servers will look for it. Other than that, the spring xml files can be in the resources (which will end up in the classpath).
You can create the Java Web project is some popular IDE, like Eclipse, NetBeans, IntelliJ IDEA, to see the typical Java Web application structure.
And there is a difference between the development structure and packaging structure.
While developing an app you can pretty much use whatever structure you like. But you must package Java EE web application according to the specific rules.
See the official Java EE tutorials for the details:
Also here is the recommended conventions for structuring applications developed using Java 2 Platform, Enterprise Edition (although dated but might be useful):
Java Blueprints Guidelines.
Project Conventions for Enterprise Applications
And here an example from the above Java BluePrints:
UPDATE
Here is the example from one of my Java Web application project with Spring. For instance I stored all Spring related configuration files in the specially created spring folder inside WEB-INF. And in the spring folder I created more folders to better organize my app. Again, it is just one of the possible variants, i.e. a matter of personal preferences.