In JEXL 2.1.1 the assignment of XML attribute to org.w3c.dom.Element via setAttribute(java.lang.String name, java.lang.String value) method worked as suggested - indexed property was resolvable and assignable. In JEXL 3.0 this is broken - unsolvable property '....'
By peeping to Uberspect.java I noticed that the following method
public JexlPropertySet getPropertySet(final Object obj, final Object identifier, Object arg)
does not contain any references to IndexedType class to resolve indexed property when assigning. As it works correctly in 2.1 I do not see any reason for this to be as by design, so I classify this as a bug.
The example of JEXL script, sorry I haven't figure out how to provide full test case here:
x = xml:child(doc, 'ConfigSet'); x.attribute.ConfigSetNo = '123'.