Ignoring __gwt_ObjectId in AbstractRequest#processRelated. The __gwt_ObjectId attribute is added by Chrome dev mode to all objects passed between JSNI and Java. Review at http://gwt-code-reviews.appspot.com/760803 git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@8608 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java b/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java index 833fbb1..8cf92e8 100644 --- a/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java +++ b/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java
@@ -79,10 +79,10 @@ /** * @deprecated use {@link #with(String...)} instead. * @param properties - * @return */ + @Deprecated public R forProperties(Collection<Property<?>> properties) { - for (Property p : properties) { + for (Property<?> p : properties) { with(p.getName()); } return getThis(); @@ -134,6 +134,8 @@ protected native void processRelated(JavaScriptObject related) /*-{ for(var recordKey in related) { + // Workaround for __gwt_ObjectId appearing in Chrome dev mode. + if (!related.hasOwnProperty(recordKey)) continue; var schemaAndId = recordKey.split(/-/, 2); var jso = related[recordKey]; this.@com.google.gwt.requestfactory.client.impl.AbstractRequest::setSchemaAndRecord(Ljava/lang/String;Lcom/google/gwt/requestfactory/client/impl/RecordJsoImpl;)(schemaAndId[0], jso);