Java JSF - Java String in View "rendern"

Discjoggy

Ensign
Registriert
Aug. 2008
Beiträge
185
Hallo liebe Community,

ich möchte gerne eine JSF-App realisieren, in der Nutzer Texte frei eingeben und diese persistieren können.
Das klappt auch soweit.
Zu dem hat der Nutzer die Möglichkeit Links zu markieren in dem er ein vorgegebenes Tag-Schema einhält, bspw. so:

Ich bin ein toller Text. Dies ist eine [LINK] und hoffentlich funktioniert diese auch.

Dabei ist es nicht wichtig, wohin verlinkt werden sollt. Also hier einfach dann so:

HTML:
<a href="LINK">LINK</a>


Beim Aufruf in Java habe ich also nur einen String. Das extrahieren der Links klappt auch.
Wie kann ich diesen "konvertierten" String nun am besten in der View rendern?
Aktuell versuche ich es so:

Code:
<h:form>
  <h:outputText value="#{module.renderedMsg}" escape="false" />
</h:form>

Ich escape nicht, da ja sonst nur der HTML-Code an sich ausgegeben wird. Was funktioniert ist, wenn ich selbst einen normalen a-Tag baue. Aber sobald ich einen <h:commandLink .../> bauen will, wird dieser leider nicht gerendert.
Hat jemand einen Ansatz?

Es gäbe auch die Möglichkeit HtmlCommandLink's dynamisch zu programmieren und dann einer UIComponente hinzuzufügen, dann habe ich aber keinen Fließtext mehr.
Ergänzung ()

Hab selbst eine Lösung gefunden... Total dämlich.
In einem <h:outputText ... /> kann man ja als value=".." kein CommandLink erzeugen.
Mal wieder den Wald vor lauter Bäumen nicht gesehen.

Ich habe es jetzt so gemacht, dass ich um alles in ein PanelGroup programmiere. So geht es.
 
Hey... Ich stehe gerade vor dem gleichem Problem und würde gerne etwas genauer wissen wie du das Problem gelöst hast. So Verstehe ich es noch nicht leider :(

danke schonma
 
Zurück
Oben