I'm trying a write a couple small lines of html in my java class that gets some data from another API. I get the data in a JSON string, and would then like to display some of it on a webpage.
To create the HTML, I try:
StringBuilder sb = new StringBuilder();
for(int i=0;i<leads.size();i++){
sb.append("<p>Name: "+leads.get(i).getFirstName()+" "+leads.get(i).getLastName()+"</p>");
sb.append("<p>Email: "+leads.get(i).getEmail()+"</p>");
sb.append("<br />");
}
fullLeadData = sb.toString();
But what ends up being displayed is a literal interpretation of the html tags. Is there a way that I can create this string so that the tags will stay as tags and not the escaped characters?
The java class is a managed bean, so in the html I have:
<body>
<div id="display">
#{PortalView.fullLeadData}
</div>
</body>
Where fullLeadData is the string with the html.
Seems like you're using JSF. Try this:
<div id="display">
<h:outputText value="#{PortalView.fullLeadData}" escape="false"/>
</div>
You may need to replace the escape sequences. The common ones being
‘&’ (ampersand) ‘&‘
‘"’ (double quote) ‘"‘
”’ (single quote) ‘'‘
‘<’ (less than) ‘<‘
‘>’ (greater than) ‘>‘
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With