Compilation problems with Errai 2.0.0.Final
htfv May 10, 2012 4:55 AMHello World!
I'm getting exceptions like the following when I build my project:
[INFO] INFO [RpcProxyLoaderGenerator] generating rpc proxy loader class.
[INFO] [ERROR] An internal compiler exception occurred
[INFO] com.google.gwt.dev.jjs.InternalCompilerException: Failed to get JNode
[INFO] at com.google.gwt.dev.jjs.impl.TypeMap.get(TypeMap.java:140)
[INFO] at com.google.gwt.dev.jjs.impl.TypeMap.get(TypeMap.java:71)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.getType(BuildTypeMap.java:730)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.processMethodBinding(BuildTypeMap.java:951)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.access$400(BuildTypeMap.java:99)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap$BuildDeclMapVisitor.visit(BuildTypeMap.java:222)
[INFO] at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.traverse(MethodDeclaration.java:209)
[INFO] at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.traverse(TypeDeclaration.java:1294)
[INFO] at org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression.traverse(QualifiedAllocationExpression.java:478)
[INFO] at org.eclipse.jdt.internal.compiler.ast.Assignment.traverse(Assignment.java:255)
[INFO] at org.eclipse.jdt.internal.compiler.ast.ConstructorDeclaration.traverse(ConstructorDeclaration.java:505)
[INFO] at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.traverse(TypeDeclaration.java:1239)
[INFO] at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse(CompilationUnitDeclaration.java:687)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.createPeersForNonTypeDecls(BuildTypeMap.java:637)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.exec(BuildTypeMap.java:514)
[INFO] at com.google.gwt.dev.jjs.impl.BuildTypeMap.exec(BuildTypeMap.java:523)
[INFO] at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java:599)
[INFO] at com.google.gwt.dev.jjs.JavaScriptCompiler.precompile(JavaScriptCompiler.java:33)
[INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java:284)
[INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java:233)
[INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java:145)
[INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:232)
[INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:198)
[INFO] at com.google.gwt.dev.Compiler$1.run(Compiler.java:170)
[INFO] at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:88)
[INFO] at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:82)
[INFO] at com.google.gwt.dev.Compiler.main(Compiler.java:177)
[INFO] [ERROR] <no source info>: public class com.brandmaker.research.ng.gwt.shop.shared.search.MediaSearchRequest
[INFO] extends java.lang.Object
[INFO] /* fields */
[INFO] private [unresolved] java.lang.String query
[INFO] /* methods */
[INFO] public void <init>()
[INFO] public java.lang.String getQuery()
[INFO] public void setQuery(java.lang.String)
[INFO]
[INFO]
[INFO]
[INFO] org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
[INFO] [ERROR] at MarshallerFactoryImpl.java(411): public MediaSearchRequest demarshall(EJValue a0, MarshallingSession a1) {
[INFO] try
[INFO] {
[INFO] if (a0.isNull())
[INFO] {
[INFO] return null;
[INFO] }
[INFO] EJObject obj = a0.isObject();
[INFO] String objId = obj.get("^ObjectID").isString().stringValue();
[INFO] if (a1.hasObjectHash(objId))
[INFO] {
[INFO] return a1.getObject(MediaSearchRequest.class, objId);
[INFO] }
[INFO] MediaSearchRequest entity = new MediaSearchRequest();
[INFO] a1.recordObjectHash(objId, entity);
[INFO] if ((obj.containsKey("query") && (! obj.get("query").isNull())))
[INFO] {
[INFO] entity.setQuery(java_lang_String.demarshall(obj.get("query"), a1));
[INFO] }
[INFO] return entity;
[INFO] }
[INFO] catch (Throwable t) {
[INFO] t.printStackTrace();
[INFO] throw new RuntimeException("error demarshalling entity: com.brandmaker.research.ng.gwt.shop.shared.search.MediaSearchRequest", t);
[INFO] }
[INFO] }
[INFO] org.eclipse.jdt.internal.compiler.ast.MethodDeclaration
Sometimes it occurs for other classes. Here's the source of MediaSearchRequest:
package com.brandmaker.research.ng.gwt.shop.shared.search;
import org.jboss.errai.common.client.api.annotations.Portable;
@Portable
public class MediaSearchRequest
{
private String query;
public String getQuery()
{
return query;
}
public void setQuery(String query)
{
this.query = query;
}
}
What am I doing wrong?
Regards