2014-01-10 3 views
5

Ich arbeite am Struts2 Framework mit JSP. Ich habe in meinem * .properties Datei:Verwenden von getText() mit mehr als einem Parameter in Struts 2 und JSP

hover_remove=Remove access to {0} at {1}` 

ich in meinem JSP haben, innerhalb eines einreichen tag:

title="%{getText('hover_remove', new String[]{{appLabel}, {locationLabel}})}" 

, die in Java funktionieren würde, aber ich erhalte die folgende Fehler in JSP:

/WEB-INF/pages/admin/cm/view.jsp(9,287) 
JSPG0055E: Unable to create an xml attribute from name 


Irgendwelche Tipps für getText(String, List String[]) in JSP mit?

+0

'Zeichenfolge'? Welche Schnur? 'some_cool_package.String' oder' java.lang.String'? Tipp: Es gibt Hinweise in der Frage. :) –

+0

@AleksandrM danke! Es zeigt jetzt den Wert. Anstelle von "Zugriff auf erste Sekunde entfernen" wird jedoch "Zugriff auf [zuerst] bei [Sekunde] entfernen" angezeigt. Ist es möglich, die eckigen Klammern zu entfernen? Wenn ich mit nur einem teste: '"% {getText ('hover_remove', {appLabel})} "' es wird korrekt angezeigt. – user3179271

Antwort

3

Wenn Sie Array von String-s erstellen möchten, müssen Sie FQN für die Klasse verwenden und nicht benötigte geschweifte Klammern entfernen.

title="%{getText('hover_remove', new java.lang.String[]{appLabel, locationLabel})}" 

aber können Sie getText Methode verwenden, die List als zweites Argument akzeptiert und in Anspruch nehmen OGNL Listenerstellung Funktion. Um in OGNL eine Liste zu erstellen, müssen Sie eine Liste von Ausdrücken in geschweifte Klammern einfügen.

title="%{getText('hover_remove', {appLabel, locationLabel})}" 
+0

Es waren die zusätzlichen Klammern. Vielen Dank! – user3179271

Verwandte Themen