ADF tree table with VO in Read Only

When we work with ViewObject  Read Only (sql based) is important have a key attribute/s in  our VO.
The other day, I worked in a adf treetable with VO RO, and when I disclosed a child in a tree I got this error:

java.lang.IllegalStateException: ADFv: Not inside a container.
at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$FacesModel.exitContainer(

The problem was that VO don’t have a Key attribute. When the VO is made upon the Entity, keys are set automatically from database , but if we used a read-only VO based on the query, we must check a key attributes