// 1. If is not transient, check its state and try to clear it, if fails remove it
// 2. If is transient, assume stateless, continue.
if (!child.isTransient())
{
// Remember that hard reset is already enabled.
Object state = child.saveState(context);
if (state == null)
{
if (child.getChildCount() > 0 || !child.getFacets().isEmpty())
{
clearTransientAndRemoveNonResetableComponents(context, ptc, child);