@Override
    public Savable[] readSavableArray(String name, Savable[] defVal) throws IOException {
        Element arrayElement = findChildElement(name);

        if (arrayElement == null || !arrayElement.hasAttributes()) {
            return defVal;
        }

        List<Element> arrayElements = getObjectArrayElements(arrayElement);

        Savable[] savableArray = new Savable[arrayElements.size()];

        Element old = currentElement;

        for (int i = 0; i < arrayElements.size(); i++) {
            currentElement = arrayElements.get(i);
            savableArray[i] = readSavableFromCurrentElement(null);
        }

        currentElement = old;

        return savableArray;
    }
Part of the jME XML IO system as introduced in the Google Code jmexml project.

@author Kai Rabien (hevee) - original author of the code.google.com jmexml project
@author Doug Daniels (dougnukem) - adjustments for jME 2.0 and Java 1.5
@author blaine
jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java