1. #1

    Default ComboBox after correct RPC no data in widget

    ComboBox after correct RPC no data in widget


    Hi all,

    I'm tring to populate combobox via RPC, but when I click on this widget I'm only able to get data from server side but not add into combobox. I suppose there are some problem into proxy or loader object infact store is always empty.

    Server call is ok (tested with dedugger)
    Please help me...

    this is my code
    Code:
    public class TrialDTOCombo extends ComboBox<BeanModel> {
        private static final String COL_ID = TrialDTO.ID;
        private static final String COL_TYPE_COMPETITION = TrialDTO.DESCRIPTION;
        private static final String DEFAULT_SORT = TrialDTO.DESCRIPTION;
        private static final String LOADING_TEXT = "In caricamento";
        private static final String EMPTY_TEXT = "Scegli la prova";
    
        
        private final TrialGWTServiceAsync service = (TrialGWTServiceAsync) GWT.create(TrialGWTService.class);
        
    
        public TrialDTOCombo() {
            super();
               
            // proxy, reader and loader
            RpcProxy<List<TrialDTO>> proxy = new RpcProxy<List<TrialDTO>>() {
                @Override
                public void load(Object loadConfig, AsyncCallback<List<TrialDTO>> callback) {
                    service.loadAll(callback);
                }
                
            };
            
            BeanModelReader reader = new BeanModelReader();
            ListLoader<ListLoadResult<TrialDTO>>  loader = new BaseListLoader<ListLoadResult<TrialDTO>>(proxy, reader);  
            loader.setSortField(DEFAULT_SORT);
            loader.setSortDir(SortDir.ASC);
            loader.setRemoteSort(true);
            loader.load();
            
            
            ListStore<BeanModel> localStore = new ListStore<BeanModel>(loader);  
            loader.load();  
            
            this.setStore(localStore);
                    
            this.setDisplayField(COL_TYPE_COMPETITION);
            this.setValueField(COL_ID);
            this.setName(COL_TYPE_COMPETITION);
            this.setFieldLabel(COL_TYPE_COMPETITION);
            this.setForceSelection(true);
            this.setLoadingText(LOADING_TEXT);
            this.setEmptyText(EMPTY_TEXT);
            this.setTriggerAction(TriggerAction.ALL);
            this.setUseQueryCache(true);
        }
    }
    form code
    Code:
    TrialDTOCombo wCustomer = new TrialDTOCombo();  
    ...
    form.add(wCustomer);
    ...
    dto code
    Code:
    public final class TrialDTO extends BeanModel implements BeanModelTag, Serializable{
        
        public final static String  ID = "id";
        public final static String  DESCRIPTION = "description";
        public final static String  NOTE = "note";
    
    
        public TrialDTO(){
            setId(0);
            setDescription("");
            setNote("");
            
        }
        
        public TrialDTO(TrialDTO record) {
            setId(record.getId());
            setDescription(record.getDescription());
            setNote(record.getNote());
        }
       
          
        
        public TrialDTO(Integer id, String description, String note){
            setId(id);
            setDescription(description);
            setNote(note);
        }
        
        public Integer getId() {
            return (Integer)get(ID);
        }
    
        public void setId(Integer id) {
            set(ID, id);
        }
    
        public String getDescription() {
            return (String)get(DESCRIPTION);
        }
    
        public void setDescription(String description) {
            set(DESCRIPTION, description);
        }
    
        public String getNote() {
            return (String)get(NOTE);
    
        }
    
        public void setNote(String note) {
           set(NOTE, note);
        }
    
        @Override
        public String toString() {
            return "TrialDTO{ ID = " + getId() + 
                    " Description= " + getDescription() + 
                    " Note = " + getNote() + 
                    "}";
        }
        
        
    }
    After combo click this is response from server
    Code:
    INFO: com.estefancivera.hresource.beans.Trial[ id=3 ]
    INFO: TrialDTO{ ID = 3 Description= Taglio Termico Note = Questa prova permette di gestire...}
    INFO: com.estefancivera.hresource.beans.Trial[ id=4 ]
    INFO: TrialDTO{ ID = 4 Description= Saldatura Note = La prova di saldatura....}
    INFO: com.estefancivera.hresource.beans.Trial[ id=5 ]
    INFO: TrialDTO{ ID = 5 Description= Estrusione Note = estrusione}
    but widget will never populate!!

  2. #2

    Default


    I solved this situation removing these code lines

    BeanModelReader reader = new BeanModelReader();
    ListLoader<ListLoadResult<TrialDTO>> loader = new BaseListLoader<ListLoadResult<TrialDTO>>(proxy, reader);


    replaced with
    ListLoader<ListLoadResult<TrialDTO>> loader = new BaseListLoader<ListLoadResult<TrialDTO>>(proxy);

Tags for this Thread

Turkiyenin en sevilen filmlerinin yer aldigi xnxx internet sitemiz olan ve porn sex tarzi bir site olan mobil porno izle sitemiz gercekten dillere destan bir durumda herkesin sevdigi bir site olarak tarihe gececege benziyor. Sitenin en belirgin ozelliklerinden birisi de Turkiyede gercekten kaliteli ve muntazam, duzenli porno izle siteleri olmamasidir. Bu yuzden iste. Ayrica en net goruntu kalitesine sahip adresinde yayinlanmaktadir. Mesela diğer sitelerimizden bahsedecek olursak, en iyi hd porno video arşivine sahip bir siteyiz. "The Best anal porn videos and slut anus, big asses movies set..." hd porno faketaxi