2010-10-29 6 views
2

J'ai importé un projet java (fichier war) à éclipse. Quand j'ai essayé de l'exécuter, j'ai eu l'erreur suivante:Exception de servlet en Java

java.lang.Error: Unresolved compilation problems: 
The type List is not generic; it cannot be parameterized with arguments <User> 
Syntax error, parameterized types are only available if source level is 5.0 

J'ai essayé de le google. J'ai trouvé que je dois changer les paramètres de conformité. J'ai changé le niveau de conformité du compilateur à 5, mais cela n'a pas résolu le problème. Quelqu'un peut-il m'aider à résoudre ce problème? Merci d'avance.

+0

Est-ce que c'est dans un JSP ou un code Java? – skaffman

Répondre

2

Il y a deux choses que vous pourriez avoir à prendre en charge.

  1. Le paramètre du compilateur.
  2. Le paramètre d'exécution.

Je suppose que vous auriez dû prendre soin de (1). Ce que vous avez peut-être manqué est le second. Lorsque vous essayez d'exécuter ce fichier de guerre, allez dans "Exécuter en tant que" -> "Exécuter les configurations". Là, vous pouvez sélectionner la version Java. Je suppose que c'est l'endroit où vous avez un problème. Essayez de le configurer sur Java 1.5 ou supérieur.

http://img638.imageshack.us/img638/8845/runconfig.jpg

+0

Il est déjà 1.5+ – narayanpatra

+0

Vous avez raison, le problème a été résolu. – narayanpatra

1

Vérifiez la version java pour votre conteneur de servlet. Vous pouvez vérifier la version Java shell en tapant

java -version 

Si ce ne est pas 1.5+ le point de JDK pertinent version plus ..

+0

Il s'agit de la version java "1.5.0_11". – narayanpatra

0

Cette guerre utilise quelque part la «génériques de. et génériques est uniquement disponible avec Java 5 et c'est au-dessus de l'erreur dit

s'il vous plaît vérifier votre niveau de compilateur java

+0

J'utilise la version java 1.5.0_11 " – narayanpatra

0

La première étape pour résoudre ce problème, est d'ignorer complètement l'indice « -source 1.5 pour permettre aux génériques ». Ce message ne vous mènera nulle part! La raison en est qu'elle provient du compilateur javac, alors que vous devez configurer le compilateur JSP jasper. C'est heureusement assez facile, bien que trouver sur le site Tomcat est assez compliqué. Tout ce que vous avez à faire est d'éditer votre fichier TOMCAT_INSTALL \ conf \ web.xml. Ajouter au org.apache.jasper.servlet.JspServlet les lignes suivantes

<init-param> 
<param-name>compilerSourceVM</param-name> 
<param-value>1.5</param-value> 
</init-param> 
<init-param> 
<param-name>compilerTargetVM</param-name> 
<param-value>1.5</param-value> 
</init-param> 

telle que la servlet ressemble à la

suivante

[web.xml]

<servlet> 
    <servlet-name>jsp</servlet-name> 
    <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> 
    <init-param> 
     <param-name>fork</param-name> 
     <param-value>false</param-value> 
    </init-param> 
    <init-param> 
     <param-name>xpoweredBy</param-name> 
     <param-value>false</param-value> 
    </init-param> 
    <init-param> 
     <param-name>compilerSourceVM</param-name> 
     <param-value>1.5</param-value> 
    </init-param> 
    <init-param> 
     <param-name>compilerTargetVM</param-name> 
     <param-value>1.5</param-value> 
    </init-param> 
    <load-on-startup>3</load-on-startup> 
</servlet> 

Vous avez maintenant configuration de votre serveur Tomcat JSP ... Configuration d'Eclipse L'édition EE d'Eclipse a la particularité de vous permettre de créer un projet Web dynamique - essentiellement un fichier de guerre éclaté et de gérer l'instance de serveur pour vous et de configurer débogage. Pratique une fois que vous savez comment cela fonctionne. Fondamentalement, ce que la configuration standard fait, c'est qu'il copie les fichiers de configuration Tomcat à partir de votre répertoire d'installation sur un chemin obscur semblable à c: \ workspace.metadata.plugins \ org.eclipse.wst.server.core \ tmp0 \ conf \ Le premier Ce qu'il faut savoir, c'est qu'il copie assez souvent les fichiers de votre répertoire Tomcat installé, donc éditer votre fichier web.xml dans ce répertoire comme indiqué ci-dessus ne fonctionnera que pendant une courte période.

Vous pouvez également essayer de modifier le fichier web.xml sous le projet Serveurs. Eclipse installe lorsque vous configurez votre premier serveur. J'ai eu beaucoup de mal à faire en sorte qu'Eclipse prenne des changements dans ce fichier ..

Au lieu de cela, supprimez simplement votre instance de serveur et recréez-la. Vos changements seront maintenant ramassés et vous êtes prêt à partir!