2012-04-30 1 views
5

У меня есть мультимодульный проект Maven. Он отлично работает в NetBeans. Но не в Eclipse (EE Helios SR 1). В файле web.xml у меня есть следующее:Атрибуты в web.xml's <web-app> не работают в Eclipse

<web-app version="3.0" 
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
      metadata-complete="true"> 

Я получаю 5 ошибок xml. Каждый из них выглядит следующим образом:

Атрибут «версия» должны быть объявлены для типа элемента «веб-приложение»

И "version" части изменяется на "xmlns:xsi" и так далее в других ошибках. Я попытался изменить версию динамического веб-модуля на 3.0, но это не помогло.

При переходе к Eclipse я сделал mvn eclipse:eclipse -Dwtpversion=2.0 в военном модуле и mvn eclipse:eclipse в других. Я также установил m2e и m2e-wtp плагины. Итак, я полагаю, что проект должен хорошо работать с этим.

Почему Eclipse не работает с проектом, работающим в другой среде IDE? Мне также пришлось изменить <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> на <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> на одном из JSP, что было немного странно, потому что старая версия этого uri работала в NetBeans.

Надеюсь, что кто-то сможет прояснить причины его (неожиданного для меня) поведения и как это можно исправить.

ответ

8

Вместо этого используйте 2.4.

<?xml version="1.0" encoding="ISO-8859-1"?> 
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee"> 

Отредактировано.

+0

Спасибо за ответ. Слишком плохо, те же ошибки для каждого атрибута с вашим образцом кода. У вас есть идеи, почему это может произойти? –

+0

См. Отредактированный. Также после сохранения файла выберите «project -> clean», чтобы повторно проверить и скомпилировать экземпляры проекта. – Bitmap

+0

Отлично, теперь он работает. Ну, я до сих пор не знаю, как запустить его в обычном режиме (NetBeans намного проще), но это еще одна проблема, и ошибок нет, и это здорово, спасибо. Тем не менее, если бы вы могли объяснить причину, по которой она работает по-разному в разных IDE, я был бы благодарен. –

0

Принятый ответ не полностью касается проблемы.

Я написал ответ на другой вопрос. Пожалуйста, проверьте это один раз.

Here является ссылкой