Tree throws exception when a single quote is in model key
Tracing my code in dev mode I got
Code:
java.lang.IllegalArgumentException: String is not complete HTML (ends in non-inner-HTML context): <div id='x-widget-68_[hnsf'U]' class='GJA1Q0MMGB'>
Since the model key returned by ModelKeyProvider goes to element attribute as is
Code:
sb.appendHtmlConstant("<div id='" + id + "' class='" + style.node() + "'>");
it should be a valid HTML attribute string which is not obivious.
Escaping ' as " also doesn't help: it unescapes implicitly making the node unselectable because com.sencha.gxt.widget.core.client.tree.Tree#findNode returns null:
Code:
String id = item.getId();
TreeNode<M> node = nodes.get(id);
id is "[hnsf'U]" while nodes contains "[hnsf"U]" key.