GWT десериализует список родовых в вызове RPC - PullRequest
1 голос
/ 30 мая 2011

У меня есть метод, который возвращает список сериализуемых объектов, я делаю RPC-вызов этого метода, и все прошло хорошо до процесса десериализации: я получил следующее сообщение: «Невозможно десериализовать ответ»

Примечание: Вот моя строка ответа gwt-rpc:

 / / OK [0,2768,3,2,0,2764,3,2,0,2761,3,2,0,2754,3,2,0,2750 , 3,2,0,2610,3,2,0,2606,3,2,0,2603,3,2,0,2600,3,2,9,1 ["java.util.ArrayList/3821976829 "" myPackage.MyEntity/845101117 "," java.lang.Integer/3438268394 "], 0.7]

DTO

public class MyEntity implements Serializable,IsSerializable
{
   private static final long serialVersionUID = -9032157988566853424L;

   public MyEntity ()
   {
      super();
   }

   private Integer _entityId; 


   private String _name;

   public Integer getEntityId()
   {
      return _entityId;
   }

   public void setEntityId(Integer entityId)
   {
      this._entityId = entityId;
   }

   public String getName()
   {
      return _name;
   }

   public void setName(String _name)
   {
      this._name = _name;
   }

}

Интерфейсы

@RemoteServiceRelativePath("ContributorService.rpc")
public interface ContributorService extends RemoteService
{
   ArrayList<MyEntity> myMethod(Arg arg);
}

public interface ContributorServiceAsync
    {

       void myMethod(Arg arg, AsyncCallback<ArrayList<MyEntity>> callback);

    }

Реализация сервера:

@SuppressWarnings("serial")
public class ContributorServiceImpl extends RemoteServiceServlet implements ContributorService
{

   @Override
   public ArrayList<MyEntity> myMethod(Arg arg)
   {
      ArrayList<MyEntity> myList = new ArrayList<MyEntity>();
MyEntity myEntity=new MyEntity();
      //code...
myList .add(myEntity);
      return myList;
   }
}

Спасибо за помощь

1 Ответ

1 голос
/ 31 мая 2011

Спасибо всем за помощь это была глупая ошибка, которую я до сих пор не могу понять. Я изменил GWT SDK и программа работала, затем я использовал старый SDK, чтобы убедиться, что проблема исходит от SDK, но сюрприз, что программа все еще работает ': (

Я ничего не понимаю о том, что прошло, но более важно, что мое приложение работает:)

...