# JSTL und Textausgabe mit Zeilenumbrüchen



## Marsman (25. Okt 2007)

Hallo Ihr!

Ich möchte mit dem Tag <sql:query> Daten aus einer Datenbank auslesen und per JSP anzeigen. Das klappt auch prima. Es gibt jedoch in der Datenbank auch ein Textfeld, bei dem die Zeilenumbrüche im Browser nicht ausgeführt werden. Wie kann ich das ändern? :roll: 

Hier ein Ausschnitt meines Codes:


```
<sql:query var="rs" dataSource="jdbc/GuestbookDB">
      select * from usr_web1_1.mt_comment where comment_visible = 1 order by comment_created_on desc
</sql:query>
<c:forEach var="row" items="${rs.rows}">
	<div id="guestEntry">
		<a name="${row.comment_id}"></a>
		

${row.comment_text}</p>
                
	</div>
</c:forEach>
```

Im Feld comment_text der Datenbanktabelle mt_comment befinden sich teilweise Zeilenumbrüche (\n). Diese gelangen aber nicht zum Browser bzw. werden ignoriert. Ich habe mal das <pre>-Tag probiert. Dann werden die Zeilenumbrüche korrekt dargestellt. Allerdings bekomme ich dann andere Probleme. Deshalb kann ich das als Lösung nicht verwenden.


Titus


----------



## The_S (26. Okt 2007)

naja, \n ist in html nunmal kein Zeilenumbruch 
 ist in html ein Zeilenumbruch.


----------



## maki (26. Okt 2007)

Nimm doch eine TEXTAREA.

Wenn ich mir so den SQL Code in der JSP ansehe... da wollte man wohl mit PHP und Perl konkurieren.


----------



## Marsman (26. Okt 2007)

maki hat gesagt.:
			
		

> Nimm doch eine TEXTAREA.



Nicht so gerne. Weil es dann wie ein Eingabefeld aussieht. Und das soll es nicht.

Titus


----------



## maki (26. Okt 2007)

CSS?


----------



## byte (26. Okt 2007)

Welche "anderen Probleme" bekommst Du denn mit <pre>? Kannst Du die nicht mit CSS beheben? Bzw. sonst halt sie Maki.


----------



## Marsman (26. Okt 2007)

maki hat gesagt.:
			
		

> CSS?



Und wie?


----------



## Marsman (26. Okt 2007)

byto hat gesagt.:
			
		

> Welche "anderen Probleme" bekommst Du denn mit <pre>?



Bei <pre> werden zwar die Steuerzeichen \n in Zeilenumbrüche umgesetzt. Wenn der Text allerdings keine solche enthält erfolgt, auch kein automatischer Umbruch mehr.

Es geht darum, dass ich die in einer Datenbank gespeicherten Gästebucheinträge anzeigen möchte. Wenn der Benutzer bei der Ursprünglichen Eingabe die Return-Taste gedrückt hatte, wird dies auch im Datenbankfeld abgespeichert (eben durch \n). In der Anzeige interessiert den Browser das jedoch leider nicht bzw. er filtert diese Escape-Zeichen heraus und stellt sie auch nicht dar.

Ich sehe es schon kommen, dass ich mir eine eigene Tag-Library basteln muss, die ein Tag zum Formatieren (Umsetzen in 
) bietet. Ich dachte nur, es würde irgendwie über HTML  und damit sehr viel weniger Aufwendig gehen.


Titus


----------



## ms (27. Okt 2007)

Dasselbe Problem hatte schonmal jemand.
http://forum.java.sun.com/thread.jspa?threadID=614154&messageID=3427211

ms


----------



## Marsman (29. Okt 2007)

...tatsächlich, vielen Dank. Ich werde aber wohl trotzdem versuchen, das über eine eigene Tag-Bibliothek zu lösen. Ich brauche die sowieso noch für andere Kleinigkeiten.


Titus


----------

