2009-09-08 2 views
0

Я вхожу в мир Servlets и 3.0 в частности, и я видел некоторые методы и аннотации, используемые в примерах и руководствах, в которых говорилось об этом, доступном, когда выпущен JAVA 6.0 (который он есть), и теперь, когда я пытаюсь использовать приведенную выше аннотацию, например, в Eclipse, она не распознает ее, хотя у меня установлена ​​java 1.6.013, и в Eclipse говорится, что я использую jre6. Когда я попытался поработать с ним немного, я наткнулся на this page относительно аннотации WebServlet, где он указывает на верхнюю правую сторону: ПРОЕКТ. Что это значит? Поддерживается ли @WebServlet в 1.6.013 или нет? проблема с моим Eclipse?Поддержка аннотации @WebServlet в java 1.6.013

Спасибо много для тех, кто может оказать мне руку помощи

EDIT: Теперь я понимаю, что я сделал немного беспорядок, но есть Jar я скачал из сервлетов 3.0 API, который в по крайней мере, для аннотаций @WebServlet, но дает мне ад.

ответ

5

Сервлеты определяются по JSR - the Servlet Specification in JSR-154. Аннотации для сервлетов были введены в version 2.5 of the servlet specification. Все контейнеры, которые реализуют версию спецификации 2.5, будут поддерживать аннотации; ваша проблема может заключаться в том, что контейнер не реализует его. Вы можете обратиться к разделу SRV.14.5. Аннотации и вложение ресурсов спецификации сервлета, где она определена в черно-белом режиме.

Кстати, вы смотрите на javadocs Java EE 6 (который сейчас находится в черновике). Servlet Spec 2.5 является частью Java EE 5.

PS: Аннотация @WebServlet, о которой идет речь, появляется в Servlet Spec 3.0, которая находится в черновике и является частью Java EE 6. На момент записывая это, для загрузки не доступен контейнер, поддерживающий Servlet Spec 3.0; не существует даже RI (эталонная реализация). Тем не менее, вы найдете экспериментальные сборки, но, быть предупрежденными, сама спецификация не является окончательной, поэтому экспериментальные сборки должны интерпретировать и реализовывать спецификацию по-разному.

PPS: Glassfish v3 Preclude Предварительный просмотр, похоже, поддерживает большинство стандартов Java EE 6. A comparison sheet предоставляет информацию о том, что доступно в Glassfish v2, v3 Preclude и v3 Preview.

+0

большое спасибо за ваш ответ, знаете ли вы, где я могу найти timeTable для Java EE 6? Я понимаю, что это проект, но функциональность, в которой я нуждаюсь, находится в Servlets 3.0 (JSR-00315) – Ittai

+0

К сожалению, между публичным проектом и финальной версией может быть очень длительный период времени с несколькими изменениями, сделанными между ними. Вы можете только скрестить пальцы. –

+0

Вы можете попробовать поддержку Servlet 3 в Glassfish, как указано Паскалем. Вводную статью можно найти по адресу http://blog.arungupta.me/2009/05/totd-82-getting-started-with-servlet-3-0-and-ejb-3-1-in-java-ee- 6-use-netbeans-6-7/ –

1

Следуя за Vineet, просто поставьте, 3.0 не используется прямо сейчас, поэтому вам следует сосредоточиться на Java EE 5 и 2.5.

3

На данный момент GlassFish v3 обеспечивает наиболее полную реализацию EJB 3.1 и Servlet 3.0 наряду с другими спецификациями Java EE 6.

Смежные вопросы