2012-04-03 3 views
1

현재 GWT 활동 장소 구현 작업을하고 있습니다. 이제 PlaceHistoryGenerator에 문제가 있음을 발견했습니다.GWT PlaceHistoryGenerator는 수퍼 클래스의 인터페이스를 무시합니다.

나는 내 플레이스 - 클래스에 Tokenizer를 가지고 있습니다. Tokenizer는 수퍼 클래스를 기반으로합니다. Superclass는 "PlaceTokenizer"인터페이스를 구현합니다. 지금까지 너무 좋아! 그러나 GWT의 PlaceHistoryGenerator는 수퍼 클래스의 선언 된 인터페이스를 무시합니다.

내가 찾은 유일한 해결책은 모두 (수퍼 클래스 및 하위 클래스)에서 인터페이스를 선언하는 것입니다. 이것은 나를 정말로 행복하게하지 않습니다.

public abstract class BasePlaceTokenizer<P extends Place> implements PlaceTokenizer<P> { 

    @Override 
    public P getPlace(final String token) { 
     ... 
     return place; 
    } 

    @Override 
    public String getToken(final P place) { 
     ... 
     return "anything..."; 
    } 
} 

public class HelloPlace { 

    public static class Tokenizer extends BasePlaceTokenizer<HelloPlace> { 
     // implements PlaceTokenizer<HelloPlace> { 

     @Override 
     public HelloPlace getPlace(final String token) { 
      ... 
      return place; 
     } 
    } 
} 
+0

질문은 무엇입니까 GWT 2.5.0의로 고정? –

+0

Hello Thomas, 질문은 : 패치가 유일한 해결책입니까? goolge-issue-list에 대한 링크를 가져 주셔서 감사합니다! 거기에 의견을 남겼습니다 ... – ChangeRequest

+0

아니요 : 명시 적으로 서브 클래스에서'PlaceTokenizer'를 명시 적으로 다시 선언 할 수 있습니다. 또는'PlaceHistoryMapperGenerator'를 복사/붙여 넣기 (포크)하고'gwt.xml'에 적당한''를 추가하여 디폴트를 덮어 쓸 수 있습니다. –

답변

관련 문제