JSPs zeigen im Frühjahr keine Objekte vom Modell an

9

Ich habe, was ein leichtes Problem sein sollte, zu lösen, aber ich habe kein Glück.

In meiner Datei servlet-servlet.xml habe ich folgende (zusätzlich zu anderen) Beans:

%Vor%

Mein Testcontroller sieht so aus:

%Vor%

Meine Jsp-Ansicht sieht folgendermaßen aus:

%Vor%

Wenn ich also das JSP anschaue, würde ich den Wert von someMessage erwarten (hier eine Zeichenfolge), aber ich bekomme nur Folgendes:

%Vor%

Wenn ich die Protokollierung aktiviere, sehe ich, dass mein someMessage-Objekt im Modell platziert wird:

%Vor%

Offensichtlich ist meine Ansicht korrekt zugeordnet, aber ich kann anscheinend nicht auf die Modellobjekte zugreifen, die der Anforderung in der Ansicht hinzugefügt wurden. Ich habe diese Art von Ding mit Spring MVC in der Vergangenheit oft gemacht, aber ich muss etwas Offensichtliches hier vermissen. Irgendwelche Ideen? Danke.

    
labratmatt 07.10.2009, 02:25
quelle

3 Antworten

14

Sind Sie sicher, dass die Auswertung von EL in Ihrer JSP aktiviert ist? Ich hatte manchmal das Problem, dass es irgendwie abgedreht wurde. Probieren Sie einen einfachen Ausdruck wie ${'test'} aus und sehen Sie, ob 'test' angezeigt wird.

Sie können auch versuchen, es mit Seitendirektiven oder etwas anderem zu aktivieren, wenn EL deaktiviert werden sollte.

%Vor%

(Sorry, ich kann mich nicht erinnern, ob diese 100% korrekt ist. Es könnte 'isELEnabled' sein)

    
moxn 07.10.2009, 09:05
quelle
4

Ich stieß auf das gleiche Problem und nachdem ich zwei ähnliche Apps verglichen hatte (eins mit EL funktionierte gut und das andere nicht), bemerkte ich, dass das Problem auf meinem Tomcat 7 von der Webapp-Version in der web.xml der Anwendung abhing .

Das gleiche jsp, das Web App 2.3 verwendet, zeigt $ {someMessage} an. (Übrigens, das ist, was Sie mit maven archetype: generieren mit archetypeArtifactId = maven-archetype-webapp).

%Vor%

Das gleiche jsp, das Web App 2.4 verwendet, zeigt das Modellobjekt richtig an:

%Vor%

Ich hoffe, es hilft!

    
fcorsino 04.12.2013 22:30
quelle
1

Ich habe nicht so viele Annotationskonfigurationen verwendet wie bei Spring MVC, daher bin ich mir nicht sicher, was alles automatisch mit dem Setup erledigt wird. Mein einziger Gedanke ist dies: Sollte der Methodenparameter ein ModelMap-Objekt sein? Die Beispiele, die ich zuvor gesehen habe, haben ModelMap als Parametertyp verwendet. Abschnitt 13.11.3 dieser Seite ist einer von ihnen: Ссылка .

Wie ich schon sagte, habe ich diese Art von Autokonfiguration noch nicht verwendet - ich mache es etwas mehr manuell und erweitere meine Controller von etwas wie einem AbstractController oder einem SimpleFormController.

    
Kaleb Brasee 07.10.2009 02:50
quelle

Tags und Links