AbstractTreeNode treeNodeComponent = findTreeNodeComponent();
boolean newExpandedValue = toggleEvent.isExpanded();
FacesContext context = getFacesContext();
ValueExpression expression = treeNodeComponent
.getValueExpression(AbstractTreeNode.PropertyKeys.expanded.toString());
if (expression != null) {
ELContext elContext = context.getELContext();
Exception caught = null;
FacesMessage message = null;
try {
expression.setValue(elContext, newExpandedValue);
} catch (ELException e) {
caught = e;
String messageStr = e.getMessage();
Throwable result = e.getCause();
while (null != result && result.getClass().isAssignableFrom(ELException.class)) {