...and I'm getting "XML Parsing Error: mismatched tag. Expected: </input>" when I try to render the page. The problem is with this line, which is generated:
Try to use something like this:
<e:datatable dataModel="#{hotelSearch.hotels}">
<e:dataTr>
<e:dataTd id="name" labelText="Name" >
<f:facet name="header">
<e:td>
<h:outputText value="Name"/>
</e:td>
</f:facet>
//following line is not mandatory
//<h:outputText value="#{ROW.name}"/>
</e:dataTd>
</e:dataTr>
</e:datatable>
Datatable knows how to render rows according dataModel and according id of the dataTd. In this case, the user doesn't have to specify explicit their values. For further details, please consult http://www.simplica.com/learn.htm "DataTable Guide".