2012-01-30 1 views
2
<module> 
<inherits name="com.google.gwt.core.Core"/> 
<inherits name="com.google.gwt.user.UserAgent"/> 
<inherits name="com.google.gwt.user.User"/> 

<replace-with class="hu.goodimpress.szamlazo.ajax.client.utils.JSON.JsonReader"> 
<when-type-is class="com.extjs.gxt.ui.client.data.JsonReader"/> 
<when-property-is name="user.agent" value="gecko1_8"/> 
</replace-with> 
<replace-with class="hu.goodimpress.szamlazo.ajax.client.utils.JSON.JsonReader"> 
<when-type-is class="com.extjs.gxt.ui.client.data.JsonReader"/> 
<when-property-is name="user.agent" value="opera"/> 
</replace-with> 
<replace-with class="hu.goodimpress.szamlazo.ajax.client.utils.JSON.JsonReader"> 
<when-type-is class="com.extjs.gxt.ui.client.data.JsonReader"/> 
<when-property-is name="user.agent" value="safari"/> 
</replace-with> 


<inherits name="com.extjs.gxt.ui.GXT"/> 
<inherits name="hu.goodimpress.szamlazo.ajax.Start"/> 


<entry-point class="hu.goodimpress.szamlazo.client.Szamlazo"/> 
</module> 

하지만 GWT는 GXT JsonReader 변경되지, 내 JsonReader : (( 내가 디버그 모드를 사용 .... 은 그래서 중앙 클래스처럼 시간과 장소에서 파생 대체하기 쉬울 것 코드로 적은GWT의 XML 교체 클래스

이유

답변

5

내가 GXT JsonReader에 익숙하지 않아요하지만 힌트 몇 가지가 있습니다 :

규칙이 다른 모듈에 의해 대체 될 수 있습니다 교체, 그래서이 될 수있다 어떤 다른 모듈, 어떤 h는 규칙을 무시합니다.

바꾸기 규칙은 GWT.create를 사용하여 만든 개체에만 영향을줍니다. 예 : GWT.create 그것을 만들 작동하지 않을 수 있도록

JsonReader reader = new JsonReader();

+1

불행히도이 JsonReader는, 생성자의 인자를 취

JsonReader reader = GWT.create(JsonReader.class);

그리고 결코를위한 : 규칙에만 작동합니다. 또한 당신이 항상 대체 된 것을 원할 경우, 속성을 검사 할 필요가 없다는 것을 지적 할 가치가 있습니다 - 그리고 그러한 속성 중 하나라도 동일한 교체를 일으키는 경우 태그는 모두 같은 < replace-with> 태그. –