Value valueArray = new ArrayValueImpl(); Value indexArray = new ArrayValueImpl();
ArrayValueImpl valueArray = new ArrayValueImpl(); ArrayValueImpl indexArray = new ArrayValueImpl();
  public int xml_parse_into_struct(String data,                                   @Reference Value valsV,                                   @Optional @Reference Value indexV)    throws Exception  {    _xmlString.append(data);    InputSource is = new InputSource(new StringReader(_xmlString.toString()));    Value valueArray = new ArrayValueImpl();    Value indexArray = new ArrayValueImpl();    try {      SAXParser saxParser = _factory.newSAXParser();      saxParser.parse(is, new StructHandler(valueArray, indexArray));    } catch (Exception ex) {      log.log(Level.FINE, ex.toString(), ex);      throw new Exception(L.l(ex.getMessage()));    }    valsV.set(valueArray);    indexV.set(indexArray);    return 1;  }