Ich versuche eine einfache Spring-Anwendung zu starten, bekomme aber folgende Ausnahme:
javax.servlet.ServletException: javax.servlet.jsp.JspTagException: Nein Nachricht gefunden unter Code 'label.firstname' für das Gebietsschema 'en_US'.
Meine Datei contact.jsp:
%Vor%Meine spring-servlet.xml-Datei
%Vor%Ich treffe URL:
localhost: 8080 / MavenWeb-0.0.1 / index
und mein Server Stacktrace:
%Vor%Schritte zum Lösen des Problems:
mvn clean install
machst
Die Datei messages_en.properties wird in angezeigt
Ziel / Projektname / WEB-INF / Klassen / messages.properties und es sollte funktionieren, da es mein Problem gelöst hat.
%Vor% Ihre MessageSource
-Bohnendefinition ist ein wenig verwirrend. In der Regel ist der Basisname das Präfix des Dateinamens (minus .properties), den Sie für die Nachrichtenauflösung verwenden möchten. Die Spring- und die JDK ResourceBundle
-Klasse werden die Sprache und / oder Länderabkürzung anhängen.
Wenn Sie beispielsweise Ressourcendateien wie messages.properties
, messages_es.properties
, messages_de.properties
haben möchten, geben Sie einen Basisnamen von WEB-INF/messages
an.
Wie lautet der tatsächliche Name Ihrer Nachrichtenpaketdatei (en)?
Ich hatte das gleiche Problem:
Lösung ist:
1-Legen Sie die Datei messages.properties in den Quellordner src / main / sources
2- die Bohnenfeder muss so sein:
%Vor%Sie sehen, dass ich Eigenschaft denselben Namen der Datei messages.properties ohne .properties
einstelleDas war das Problem ^^
Sie müssen den Ordner "resources" zu "Web Deployment Assembly" hinzufügen. Danach ersetzen "Klassenpfad: Nachrichten" nur "Nachrichten". Die letzte Änderung, die Sie vornehmen müssen, ist das Säubern Ihrer Projekte.
Beispiel:
%Vor%Das wird ausreichen. :)
Eine wichtige Überlegung ist, dass sich die Eigenschaftendatei nicht im Klassenpfad befinden sollte, um automatisch neu geladen zu werden. Normalerweise werden die Eigenschaften von den Servern zwischengespeichert, wenn sie im Klassenordner liegen, ist das nicht wirklich effektiv. In Spring Docs, im Fall von classpath: messages, haben andere CachedSeconds als -1 keinen Effekt.
Besser spät als nie. Ich hatte das gleiche Problem. Hier ist, wie ich es gelöst habe. Mein Dateiname war:
für Frankreich, weil es ein Französisch Spring Tutotrial ist. Aber ich wohne in Nederlands. Also habe ich versucht, es in
umzubenennenund es funktioniert. Ich bin mir nicht sicher, ob dies eine langfristige Lösung ist, aber wir werden sehen.
Ich hatte das gleiche Problem, aber ich habe es einfach als messages_properties gelassen und es löste das Problem
Tags und Links java spring jsp spring-mvc