IntelliJ 9 Implizite Objektmethoden in JSPs nicht erkennen?

8

Ich probiere IntelliJ IDEA 9 für 30 Tage aus, und mir gefällt, was ich bisher gesehen habe. Das einzige eklatante Problem, das ich habe, ist, dass der Editor keine Ahnung zu haben scheint, was mit den impliziten JSP-Objektmethoden zu tun ist ...

Beispiel 1:

%Vor%

Der Editor markiert die "println" in dieser Anweisung als Fehler und sagt: Die Methode 'println (java.lang.String)' kann nicht aufgelöst werden. Diese Syntax ist so einfach wie möglich, und es funktioniert gut, wenn ich es auf meinem App-Server (Tomcat 7) bereitstellen, aber IntelliJ besteht darauf, dass es keine solche Methode für das "out" -Objekt gibt. Es ist auch nicht nur "out". Es erkennt die Methode any des impliziten Objekts nicht ...

Beispiel 2:

%Vor%

In diesem Fall erkennt IntelliJ die Methode getServletContext () nicht, aber erkennt die Methode getRealPath (). Wie seltsam ist das?

Was mich umgehauen hat, ist, dass ich das Web nach einer Erwähnung dieses Problems mit IntelliJ 9 durchforstet habe, und ich habe Zilch erfunden. Das deutet darauf hin, dass ich vielleicht etwas Ungewöhnliches mit meinem Setup gemacht habe, aber ich kann mir nicht vorstellen was. Wie ich oben gesagt habe, funktioniert es gut, wenn ich trotzdem baue und deploye; Es ist nur ärgerlich, dass meine JSP-Seiten überall mit falschen roten Fehlern gefüllt sind. Kinda vereitelt den Zweck der Verwendung einer intelligenten IDE an erster Stelle.

Jedenfalls dachte ich, ich würde das vor die Experten werfen und sehen, ob ihr etwas Licht in das Thema bringen könnt. Jede Einsicht wäre willkommen!

    
Syndog 12.10.2010, 11:29
quelle

3 Antworten

17

Sie haben dieses Problem mit out , pageContext und jspContext , weil sie Klassen verwenden, die mit der JSP-API (nicht der Servlet-API) bereitgestellt werden.

Um sie zu verwenden (wenn Sie mit einem Maven-Projekt arbeiten) fügen Sie diese Abhängigkeit hinzu:

%Vor%

Wenn Sie das Problem mit jedem impliziten Objekt ( session , request usw.) haben, sollten Sie auch die Servlet API-Abhängigkeit hinzufügen:

%Vor%     
Colin Hebert 12.10.2010, 11:52
quelle
3

Sie müssen (mit einem Häkchen) in der Nähe eines jeden Elements exportieren Datei - & gt; Projektstruktur - & gt; Module - & gt; Abhängigkeiten - & gt; Hinzufügen Bibliotheken, die Sie bereitstellen möchten.

    
doug 15.04.2013 15:05
quelle
3

Wenn Sie Probleme mit der Sitzungsvariablen haben, die erkannt wird, öffnen Sie die Datei in IntelliJ. Setzen Sie die folgende Seitenanweisung an den Anfang Ihrer Datei, und sofort wird die Sitzungsvariable im IntelliJ-Editor verfügbar gemacht und erkannt.

%Vor%

Wenn Sie bereits die Seitenanweisung haben, können Sie einfach dieses Attribut hinzufügen:

%Vor%     
busitech 13.12.2014 06:17
quelle

Tags und Links