Hi,
I do have a problem since moving to rc1 related to a map object.
Using beta1 the code works ok, but with rc1 it yields "this.static$.animals.put is not a function".
Example code:
@JsNative(isNative = true, namespace="Example.com", name="Person")
public class Person{
@JsProperty(name = "name")
public String name;
@JsProperty(name = "age")
public int age;
private Map<String, Animal> animals; //an extra property that is not found in javascript
public native boolean isOld();
@JsOverlay
public final void buyAnimal(Animal animal){ // I don't know if it matters, but Animal object is also native as Person
String animalName = animal.getName();
animals.put(animalName, animal); // this fails with "this.static$.animals.put is not a function"
}
}
The above code works fine when using beta1.
Is there some documentation related to differences between rc1 and beta1(at least related to jsinterop)?
What other changes should I make when moving to rc1?
My pom file contains:
...
<properties>
...
<java.version>1.8</java.version>
<gwt.version>2.8.0-rc1</gwt.version>
<gwt.maven.plugin.version>2.8.0-SNAPSHOT</gwt.maven.plugin.version>
<jsinterop.version>1.0.0-SNAPSHOT</jsinterop.version>
...
</properties>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>${gwt.maven.plugin.version}</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<strict>true</strict>
<style>${gwt.style}</style>
<extraJvmArgs>-Xmx2048m -Xss1024k -XX:MaxPermSize=256m</extraJvmArgs>
<hostedWebapp>${webappDirectory}</hostedWebapp>
<superDevMode>${superDevMode}</superDevMode>
<generateJsInteropExports>true</generateJsInteropExports>
<runTarget>...</runTarget>
<module>...</module>
<mode>htmlunit</mode>
</configuration>
<executions>
<execution>
<id>compile</id>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>run</id>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<id>test</id>
<goals>
<goal>test</goal>
</goals>
<configuration>
<includes>**/GwtTestSuite*.java</includes>
</configuration>
</execution>
</executions>
</plugin>
...
<dependencies>
...
<!-- GWT -->
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-codeserver</artifactId>
<scope>provided</scope>
</dependency>
...
</dependencies>
...
Thank you,