2012-04-03 10 views
0

Ich stolperte über ein Problem mit jsps. Obwohl der zweite Cout <c:out value="" /> nichts anzeigen soll, wird der darüber liegende Cout angezeigt, also 'Text'. Ist das ein Fehler oder mache ich etwas falsch?Weird Jsp Verhalten

<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html"%> 
<%@ taglib prefix="forms" uri="http://www.common-controls.com/cc/tags-forms"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%> 

<html:form action="/rulesDetail"> 
    <forms:form type="edit" formid="rulesDetail"> 
    <forms:section title="Title"> 
     <forms:row> 
      <forms:plaintext label="Label1"> 
      <c:out value="Text"/> 
      </forms:plaintext> 
     </forms:row> 
     <forms:row> 
      <forms:plaintext label="Label2"> 
       <c:out value="" /> 
      </forms:plaintext> 
     </forms:row> 
    </forms:section> 
    </forms:form> 
</html:form> 
+0

Sie erhalten also zweimal die Ausgabe 'Text'? – Thomas

+0

ja, eine unter der anderen – hhh3112

+0

Hmm, von der Quelle für '' Ich kann nichts sehen, das dieses Verhalten anzeigt. Hast du überprüft, dass es nicht das '' -Tag ist, das auf diese Weise leeren Inhalt verarbeitet? – Thomas

Antwort

2

Antwort aus den Kommentaren zu der Frage: Das Problem ist nicht der <c:out> Tag, das wie erwartet funktionieren soll, sondern <forms:plaintext>, die den Wert einer vorherigen Zeile wieder zu verwenden scheint, wenn ihr Inhalt nur leer oder Leerzeichen ist.