javax.servlet.JSP.PageContext ne peut pas être résolu à un type [dupliquer]
cette question a déjà une réponse ici:
je vois les erreurs ci-dessous dans ma page jsp -
javax.servlet.jsp.PageContext cannot be resolved to a type
javax.servlet.jsp.JspException cannot be resolved to a type
j'ai vu un post sur ce et essayé peu de choses qui ont été suggérer. BalusC a fourni une excellente contribution - JSTL1.2 et Standard.jar ne doivent pas être utilisés ensemble. Je l'ai fait et j'ai réglé le problème pour un certain temps - mais il réapparaît. Je ne suis pas sûr d'avoir d'autres collisions avec des pots. J'ai défini toutes les jarres comme des dépendances dans Maven. Voici les dépendances que j'ai spécifiées pom.xml -
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.38</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<exclusions>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-configuration</groupId>
<artifactId>commons-configuration</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.6</version>
</dependency>
</dependencies>
4 réponses
vous aurez besoin d'importer dans votre projet les API JSP, qui ne sont pas inclus dans servlet-api
dans mon projet, la solution est:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
la solution qui a fonctionné pour moi, est donnée dans cette réponse . Allez dans Propriétés du projet > runtimes ciblés > sélectionnez la case à cocher pour un runtime (Apache Tomcat 7 dans mon cas).
C'est tout. Construisez le projet maintenant et tout ira bien.
en supposant que c'est le pom pour une application web...
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
un certain nombre de ces dépendances doivent être définies comme fournies car elles sont fournies par le conteneur. Vous ne devriez pas les inclure dans votre demande. Voir Maven dependency étendues . À défaut, cela peut entraîner un comportement indéterminé.
exactement quelles dépendances sont fournies dépend du conteneur.
"La solution qui a fonctionné pour moi, est donné dans cette réponse. Allez dans Propriétés du projet > runtimes ciblés > sélectionnez la case à cocher pour un runtime (Apache Tomcat 7 dans mon cas). C'est tout. Construisez le projet maintenant et tout ira bien."
Cette solution a fonctionné pour moi.