Ok I'm assuming that by no value you mean null. Please change the validation accordingly if it is not.
The following should work
<h:column>
<h
utputText value="--" rendered="#{controlAdmin.testValue==null}"></h
utputText>
<h:inputText value="#{controlAdmin.testValue}" rendered="#{controlAdmin.testValue!=null}"></h:inputText>
</h:column>
It has two outputs inside the column tag. One is an inputText and one is an outputText. Only one will be displayed depending on the value of rendered="".
The first tag compares the controlAdmin.textValue variable against null. If it is null it renders the outputText (showing "--"). Hence the second (the inputText) isn't rendered since it's
test is against NOT null. So when not null the variables value is shown.
Change controlAdmin for whatever you put in var under dataTable and
you should be ready to go. Change inputText to outputText too.
Cheers,
Jerry