I found that the backing bean value displayed on the JSF page will collapse the white-space automatically .How can I make the value displayed do not collapse the white-space??
For example , I have a MBean which has a String variable test and assign the value
"test test"
, when I render it using <h1>${MBean.test}</h1> , it just give out test test which all the white-spaces in the middle collapse to a white-space only.
This behavior also happens if I display the ArrayList from the MBean in the table format using the <rich:dataTable> , all the white-spaces will be collapsed too.
Updated: I still think that it is specific to the JSF , because when I use
<h:inputText value="#{MBean.test}"/> , the rendered input text box will collapse all the white-spaces.How can I preserve all the white-spaces in this case??
This is not specific to JSF. This is specific to HTML
You can fix it by either putting it in a HTML
<pre>element:Or by applying CSS
white-space: preon the HTML element:(as you see, it also occurs on your question here on Stackoverflow as well, since it also doesn’t preserve whitespace by
white-space: pre)