Почему возникает ошибка в импорте javax.servlet. *? - PullRequest
6 голосов
/ 07 марта 2011

Я использую JavaSE6 и Eclipse, в строке есть ошибка

import javax.servlet.*

Кажется, для этого импорта нет jar.

Как это исправить?Установить что-нибудь, использовать Eclipse EE или добавить некоторую зависимость в Maven?

Ответы [ 5 ]

10 голосов
/ 07 марта 2011

API сервлета не является частью JDK, вам нужно добавить дополнительную зависимость к вашему pom.xml.

Если это для веб-приложения, вы можете добавить эту зависимость с помощью provided scope иКонтейнер сервлета сделает эти классы доступными вашему веб-приложению во время развертывания.

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>servlet-api</artifactId>
  <version>2.5</version>
  <scope>provided</scope>
</dependency>
4 голосов
/ 07 марта 2011

javax.servlet.* является частью Servlet API (который является частью инфраструктуры Java EE).Сервер веб-приложений / веб-контейнеры, желающие использовать сервлеты, должны реализовывать API сервлетов.

Tomcat имеет servlet-api.jar, который можно найти под TOMCAT_HOME/lib (в Tomcat 6 и выше).Найдите тот, который подходит вам на основе сервера веб-приложений, который вы используете.

2 голосов
/ 07 марта 2011

Вам нужно servlet-api.jar. Предполагая, что вы используете Eclipse, вы добавили бы jar в путь сборки, щелкнув правой кнопкой мыши по проекту & # x2192; Свойства & # x2192; Путь сборки Java & # x2192; Добавить внешние файлы JAR ...

Если вы используете Tomcat 5.5 , JAR находится в $CATALINA_HOME/common/lib.

Если вы используете Tomcat 6 + , JAR находится в $CATALINA_HOME/lib.

Если вы используете JBoss 5 , JAR находится в $JBOSS_HOME/common/lib.

2 голосов
/ 07 марта 2011

javax.servlet доступно только для Java Enterprise Edition. Или используйте его, или приобретите необходимые файлы JAR (я получил их с Apache Tomcat ).

1 голос
/ 07 марта 2011

Tomcat?Вам нужен servlet-api.jar подарок внутри tomcat/lib

...