2012-11-13 2 views
0

안녕하세요 저는 GWT 프로젝트에 대한 RequestFactory를 설정했습니다. 그것은 잘 작동하지만 내가 BuslineProxy과 버스 프록시with() 절이있는 객체 가져 오기 RequestFactory GWT

buslineContext.findAll().with("buses").fire(new Receiver<List<BuslineProxy>>() { 

    @Override 
    public void onSuccess(List<BuslineProxy> response) { 

     String requestedData=""; 
     for (BuslineProxy busline : response) 
     { 
      requestedData+="Busline " +busline.getName() +" with id " + busline.getId()+"\n"; 
      for(BusProxy bus : busline.getBuses()) 
      { 
       requestedData+=bus.getId()+"\n"; 
      } 
     } 
     Window.alert(requestedData); 
    } 
}); 

내 서버 개체 버스 라인은 버스라는 목록 필드가이 객체 의 개체 필드를 얻을 수 없습니다. 나는 with 절에 접근하고자하는 필드를 넣기 만하면된다는 것을 알았다. 그것은 작동하지 않는다. 그리고 나는 모든 버스 라인을 얻는다. 그러나 버스의 그들의 목록은 비어있다. 도움 주셔서 감사합니다.

답변

0

Florent는 사소한 실수로 인해 데이터가 비어 있음을 나타냅니다. 더 큰 문제가 있지만 엔티티 프록시 버스에는 직접 인스턴스화되지 않더라도 기본 생성자와 정적 findAll 메소드가 없었습니다. 생성자가 비어 있고 findAll 메소드가 null을 반환하지만 RequestFactory가 여전히이를 필요로합니다!

1

GWT가 객체를 직렬화 할 때 서버에서 버스가 비어 있지 않습니까?

Busline을 가져올 때 Bus를 올바르게 가져 왔는지 확인할 수 있습니다. 일부 프록시 메카니즘과 OpenSessionInViewFilter 등을 사용하지 않는 한 데이터가 없으면 GWT는 데이터베이스 쿼리 자체를 수행하지 않습니다.

관련 문제