Tengo que insertar en una base de datos SQL unos datos de mi aplicación AIR, y lo hago llamando a un web service en Glassfish. Normalmente tengo que hacer varios insert, por lo que varias llamadas al web service, ya que si lo hago todo en una sentencia separando por ";" no me lo reconoce (insert into .... ; insert into ....; insert into ....

Si controlo que solo se asigne un listener, sólo me hace un insert. Si asigno un listener para cada llamada, la segunda vez que haga un lote de llamadas me acumula las llamadas anteriores (primero hago 2 llamadas y todo bien. Luego hago otras 2 llamadas y me hace estas 2 y las 2 primeras...).
He probado con e.currentTarget.removeEventListener(ResultEvent.RESULT,MiFuncion), pero no me los elimina.
¿Alguna idea?
Código ActionScript :
var arr:ArrayCollection=new ArrayCollection(); for each(var s:String in array_cadena){ for each(var r:Object in array_objetos){ if(s==r._nombre){ arr.addItem(r); Consulta.token=WebService1.Consulta("Consulta select"); Consulta.addEventListener(ResultEvent.RESULT,MiFuncion=function (e:Event):void{ Funcionresult(e,arr); }); } } } protected function Funcionresult(e:Event,r:ArrayCollection):void{ e.currentTarget.removeEventListener(ResultEvent.RESULT,MiFuncion); var id:String=Consulta.lastResult Insertar.token=WebService1.Insertar("Insert into...); . . . }