Problem occured when deploying app engine project
I am using Eclipse to develop an app engine application and when I want to deploy the a开发者_C百科pp I obtain this error :
'Deploying APP_NAME to Google' has encountered a problem
An internal error occured during "Deploying APP_NAME to Google"
Details are :
An internal error occurred during: "Deploying APP_NAME to Google".
Received IOException parsing the input stream for /home/michael/workspace/APP_NAME/war/WEB-INF/web.xml
Any idea how to fix this problem?
Thank you for your help.
EDIT
What's strange is that there isn't an error everytime I deploy the app.
web.xml :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<!-- Servlets -->
<servlet>
<servlet-name>deleteAllUniversityServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllUniversities</servlet-class>
</servlet>
<servlet>
<servlet-name>deleteAllCountryServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllCountries</servlet-class>
</servlet>
<servlet>
<servlet-name>deleteAllCitiesServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllCities</servlet-class>
</servlet>
<servlet>
<servlet-name>addUniversity</servlet-name>
<servlet-class>com.APP_NAME.api.AddUniversity</servlet-class>
</servlet>
<servlet>
<servlet-name>addCity</servlet-name>
<servlet-class>com.APP_NAME.api.AddCity</servlet-class>
</servlet>
<servlet>
<servlet-name>addCountry</servlet-name>
<servlet-class>com.APP_NAME.api.AddCountry</servlet-class>
</servlet>
<servlet>
<servlet-name>addGDP</servlet-name>
<servlet-class>com.APP_NAME.api.AddGDP</servlet-class>
</servlet>
<servlet>
<servlet-name>addHPC</servlet-name>
<servlet-class>com.APP_NAME.api.AddHPC</servlet-class>
</servlet>
<servlet>
<servlet-name>addRanking</servlet-name>
<servlet-class>com.APP_NAME.api.AddRanking</servlet-class>
</servlet>
<servlet>
<servlet-name>greetServlet</servlet-name>
<servlet-class>com.APP_NAME.server.GreetingServiceImpl</servlet-class>
</servlet>
<servlet>
<servlet-name>serverSearchServiceImpl</servlet-name>
<servlet-class>com.APP_NAME.server.ServerSearchServiceImpl</servlet-class>
</servlet>
<servlet>
<servlet-name>serverChartServiceImpl</servlet-name>
<servlet-class>com.APP_NAME.server.ServerChartServiceImpl</servlet-class>
</servlet>
<servlet>
<servlet-name>serverCoordServiceImpl</servlet-name>
<servlet-class>com.APP_NAME.server.ServerCoordServiceImpl</servlet-class>
</servlet>
<servlet>
<servlet-name>serverDataServiceImpl</servlet-name>
<servlet-class>com.APP_NAME.server.ServerDataServiceImpl</servlet-class>
</servlet>
<servlet>
<servlet-name>serverCityServiceImpl</servlet-name>
<servlet-class>com.APP_NAME.server.ServerCityServiceImpl</servlet-class>
</servlet>
<!-- Servlet-mappings -->
<servlet-mapping>
<servlet-name>addUniversity</servlet-name>
<url-pattern>/api/addUniversity</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>addCity</servlet-name>
<url-pattern>/api/addCity</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>addCountry</servlet-name>
<url-pattern>/api/addCountry</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>addGDP</servlet-name>
<url-pattern>/api/addGDP</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>addHPC</servlet-name>
<url-pattern>/api/addHPC</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>addRanking</servlet-name>
<url-pattern>/api/addRanking</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>deleteAllCitiesServlet</servlet-name>
<url-pattern>/api/deleteAllCities</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>deleteAllUniversityServlet</servlet-name>
<url-pattern>/api/deleteAllUniversities</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>deleteAllCountryServlet</servlet-name>
<url-pattern>/api/deleteAllCountries</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>greetServlet</servlet-name>
<url-pattern>/APP_NAME/greet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>serverSearchServiceImpl</servlet-name>
<url-pattern>/APP_NAME/serverSearch</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>serverChartServiceImpl</servlet-name>
<url-pattern>/APP_NAME/serverChart</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>serverCoordServiceImpl</servlet-name>
<url-pattern>/APP_NAME/serverCoord</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>serverDataServiceImpl</servlet-name>
<url-pattern>/APP_NAME/serverData</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>serverCityServiceImpl</servlet-name>
<url-pattern>/APP_NAME/serverCity</url-pattern>
</servlet-mapping>
<!-- Default page to serve -->
<welcome-file-list>
<welcome-file>APP_NAME.html</welcome-file>
</welcome-file-list>
</web-app>
EDIT 2
In fact when I obtain an error, there are errors in the web.xml file that appear :
Multiple annotations found at this line :
- Attribute "version" must be declared for element type "web-app".
- Attribute "xmlns" must be declared for element type "web-app".
but now, after correction, the beginning of my file look like followings :
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.5">
<!-- Servlets -->
<servlet>
<servlet-name>deleteAllUniversityServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllUniversities</servlet-class>
</servlet>
...
I don't understand what's wrong...
EDIT 3
The problem seems to come from the DOCTYPE because when I put the DOCTYPE as a comment the application deploys correctly.
You are not closing the <web-app>
node.
Try with this:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.5">
<servlet>
<servlet-name>deleteAllUniversityServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllUniversities</servlet-class>
</servlet>
<servlet>
<servlet-name>deleteAllCountryServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllCountries</servlet-class>
</servlet>
<servlet>
<servlet-name>deleteAllCitiesServlet</servlet-name>
<servlet-class>com.APP_NAME.api.DeleteAllCities</servlet-class>
</servlet>
<servlet>
<servlet-name>addUniversity</servlet-name>
<servlet-class>com.APP_NAME.api.AddUniversity</servlet-class>
</servlet>
<servlet>
<servlet-name>addCity</servlet-name>
<servlet-class>com.APP_NAME.api.AddCity</servlet-class>
</servlet>
</web-app>
精彩评论