I think you're mis-using the term "datatype". In the case of rows of a dataTable, what you seem to be calling its "datatypes" would actually be the values of the row item's properties. For the list, there are no properties as such, so it's simple the list values you want to display.
I cannot think offhand why what you are proposing wouldn't work as long as the neededResources property of Product was populated with list values. Although it's generally not possible to make an ORM model object serve directly as a
JSF backing bean GUI model object, since the JSF bean manager doesn't have the ability to either locate a specific persistence model object instance or to retrieve it and map it.
One thing I do recommend is that instead of a simple EL expression to output the value, use the h:outputText element. It won't solve the problem of getting a value, but it will at least allow JSF to more cleanly integrate that value into its component tree. Plus, of course, add support for stuff like CSS styling.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.