Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting error: The content of element type "web-app" must match,

When I build my project in Eclipse Helios Service Release 2, I get an error in my web.xml. Please suggest what I have to do for this. In my project I am using DTD 2.2. The error is below.

The content of element type "web-app" must match "(icon?,display- name?,description?,distributable?,context-param*,servlet*,servlet-mapping*,session-config?,mime- mapping*,welcome-file-list?,error-page*,taglib*,resource-ref*,security-constraint*,login-config?,security- role*,env-entry*,ejb-ref*)".

like image 952
Amritesh Singh Avatar asked Apr 19 '11 07:04

Amritesh Singh


1 Answers

The error message tells you in detail in what order the elements are supposed to be placed and how many of them are allowed. In other words, the ordering or amount of the elements inside the <web-app> of your web.xml is incorrect. For example, as per the error message, <servlet> needs to go before <servlet-mapping>. The ? suffix means that there may be zero or one of them. The * suffix means that there may be zero or many of them.

So, the example below is invalid:

<servlet>...</servlet> <servlet-mapping>...</servlet-mapping>  <servlet>...</servlet> <servlet-mapping>...</servlet-mapping>  <servlet>...</servlet> <servlet-mapping>...</servlet-mapping> 

While the example below is valid:

<servlet>...</servlet> <servlet>...</servlet> <servlet>...</servlet>  <servlet-mapping>...</servlet-mapping> <servlet-mapping>...</servlet-mapping> <servlet-mapping>...</servlet-mapping> 
like image 72
BalusC Avatar answered Sep 22 '22 18:09

BalusC