It is designed to function that way. GWT services are Asynchronous, there is no guarantee on the order of execution of the onSucess() method of AsyncCallback.
I would recommend you go through this link - http://code.google.com/webtoolkit/doc/1.6/DevGuideServerCommunication.html#DevGuideGettingUsedToAsyncCalls On Sep 4, 1:43 pm, abad <[email protected]> wrote: > Hi i have a problem when a Call a GWT because the onSuccess method of > the AsyncCallback is executing later that the event ocurrs i find out > this doing a debug. > > Here is the code of the Classes. > > package co.com.argos.mgd.admon.client; > > import java.util.ArrayList; > > import co.com.argos.mgd.admon.client.gui.CompetenciasGrid; > import co.com.argos.mgd.admon.client.services.CompetenciasService; > import > co.com.argos.mgd.admon.client.services.CompetenciasServiceAsync; > import co.com.argos.mgd.admon.client.structures.ArrayCompetencias; > > import com.google.gwt.core.client.EntryPoint; > import com.google.gwt.core.client.GWT; > import com.google.gwt.user.client.rpc.AsyncCallback; > import com.google.gwt.user.client.rpc.ServiceDefTarget; > import com.google.gwt.user.client.ui.HTML; > import com.gwtext.client.core.Position; > import com.gwtext.client.widgets.MessageBox; > import com.gwtext.client.widgets.Panel; > import com.gwtext.client.widgets.TabPanel; > import com.gwtext.client.widgets.Viewport; > import com.gwtext.client.widgets.layout.FitLayout; > > public class AdmonMGDGWT implements EntryPoint { > > private Panel panel = new Panel(); > Panel competenciasPanel = null; > ArrayList competencias = new ArrayList(); > > public ArrayList getCompetencias() { > return competencias; > } > > public void setCompetencias(ArrayList competencias) { > this.competencias = competencias; > } > > public void onModuleLoad() { > > obtenerCompetencias(); > crearTabs(getCompetencias()); > Panel panel = getPanel(); > Viewport viewport = new Viewport(panel); > > } > > public void crearTabs(ArrayList c) { > CompetenciasGrid grid = new CompetenciasGrid(c); > panel = new Panel(); > panel.setBorder(false); > panel.setPaddings(15); > panel.setLayout(new FitLayout()); > panel.add(grid); > > } > > public Panel getPanel() { > return panel; > } > > public void setPanel(Panel panel) { > this.panel = panel; > } > > public Panel getCompetenciasPanel() { > return competenciasPanel; > } > > public void setCompetenciasPanel(Panel competenciasPanel) { > this.competenciasPanel = competenciasPanel; > } > > public void agregarTabs(TabPanel tab){ > panel.add(tab); > > } > > public void obtenerCompetencias(){ > AsyncCallback callback = new AsyncCallback() > > { > > public void onSuccess( Object result ) > > { > > setCompetencias((ArrayList) result); > > } > > public void onFailure( Throwable ex ) > > { > > MessageBox.alert( "Error", "Error while loading > data" ); > > } > > }; > CompetenciasService.Util.getInstance().getCompetencias > (callback); > > } > > } > > And the competenciasService is > > package co.com.argos.mgd.admon.client.services; > > import java.util.ArrayList; > > import com.google.gwt.core.client.GWT; > import com.google.gwt.user.client.rpc.RemoteService; > import com.google.gwt.user.client.rpc.ServiceDefTarget; > > public interface CompetenciasService extends RemoteService { > > public static final String SERVICE_URI = "/competencias"; > > public static class Util { > > public static CompetenciasServiceAsync getInstance() { > > CompetenciasServiceAsync instance = > (CompetenciasServiceAsync) GWT > .create(CompetenciasService.class); > ServiceDefTarget target = (ServiceDefTarget) instance; > target.setServiceEntryPoint(SERVICE_URI); > return instance; > } > } > public ArrayList getCompetencias(); > public void crearCompetencia(String nombre,String > grupoCompetencia,String nivelEsperado,String definicion,String > comportamientosObservables,String usuarioCreacion); > public void modificarCompetencia(String idCompetencia,String > nombre,String grupoCompetencia,String nivelEsperado,String > definicion,String comportamientosObservables,String > usuarioModificacion); > public void statusCompetencia(String idCompetencia,String > usuarioModificacion) ; > > } > > and the Service Implementation > > package co.com.argos.mgd.admon.server; > > import java.util.ArrayList; > > import co.com.argos.mgd.admon.client.services.CompetenciasService; > import co.com.argos.mgd.admon.server.bl.BLCompetencia; > > import com.google.gwt.user.server.rpc.RemoteServiceServlet; > > /** > * Servlet implementation class ServletCompetencias > */ > public class CompetenciasServicesImpl extends RemoteServiceServlet > implements CompetenciasService { > > /** > * > */ > private static final long serialVersionUID = 1L; > > public ArrayList getCompetencias() { > ArrayList competencias = new ArrayList(); > competencias = BLCompetencia.instance().getCompetencias("2"); > return competencias; > } > > public void crearCompetencia(String nombre, String grupoCompetencia, > String nivelEsperado, String definicion, > String comportamientosObservables, String > usuarioCreacion) { > BLCompetencia.instance().crearCompetencia(nombre, > grupoCompetencia, > nivelEsperado, definicion, comportamientosObservables, > usuarioCreacion); > > } > > public void modificarCompetencia(String idCompetencia,String > nombre,String grupoCompetencia,String nivelEsperado,String > definicion,String comportamientosObservables,String > usuarioModificacion) { > BLCompetencia.instance().modificarCompetencia(idCompetencia, > nombre, > grupoCompetencia, nivelEsperado, definicion, > comportamientosObservables, usuarioModificacion); > > } > > public void statusCompetencia(String idCompetencia,String > usuarioModificacion) { > > BLCompetencia.instance().activarDesactivarCompetencia(idCompetencia, > usuarioModificacion); > > } > > } > > Thanks for all your Help > > Best Regards. > > Carlos Jaramillo --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en -~----------~----~----~----~------~----~------~--~---
