Your getSourceWriter method can explicitly return 'null', and you don't check for 'null' after you call it.
On Tuesday, November 11, 2014 3:24:17 AM UTC+1, Łukasz Bączek wrote:
-- On Tuesday, November 11, 2014 3:24:17 AM UTC+1, Łukasz Bączek wrote:
W dniu 11.11.2014 o 02:03, Jens pisze:
You were right.Put the generator outside of your <source> path so that the gwt compiler does not try to compile it to javascript.
Now I changed the path and the generator is working but there is another problem
public class rttiGenerator extends Generator {
@Override
public String generate(TreeLogger logger, GeneratorContext context, String typeName) throws UnableToCompleteException {
JClassType classType;
try {
classType = context.getTypeOracle().getType(typeName);
SourceWriter src = getSourceWriter(classType, context, logger);
src.println("public void test(){}");
src.commit(logger);
return typeName + "Generated";
} catch (NotFoundException e) {
e.printStackTrace();
}
return null;
}
public SourceWriter getSourceWriter(JClassType classType,
GeneratorContext context, TreeLogger logger) {
String packageName = "pl.cba.lukaszbaczek.client";
String simpleName = classType.getSimpleSourceName() + "Generated";
ClassSourceFileComposerFactory composer = new ClassSourceFileComposerFactory(
packageName, simpleName);
composer.addImport("com.google.gwt.user.client.ui. Button");
composer.setSuperclass("Button");
PrintWriter printWriter = context.tryCreate(logger, packageName,
simpleName);
if (printWriter == null) {
return null;
} else {
SourceWriter sw = composer.createSourceWriter(context, printWriter);
return sw;
}
}
}
GWT Compiling client-side code.
Compiling module org.yournamehere.Main
Computing all possible rebind results for 'com.google.gwt.user.client.ui.Button'
Rebinding com.google.gwt.user.client.ui.Button
Invoking generator pl.cba.lukaszbaczek.rttiClassGWT.rttiGenerator
[ERROR] Generator 'pl.cba.lukaszbaczek.rttiClassGWT.rttiGenerator' threw an exception while rebinding 'com.google.gwt.user.client. ui.Button'
java.lang.NullPointerException
at pl.cba.lukaszbaczek.rttiClassGWT.rttiGenerator. generate(rttiGenerator.java: 30)
at com.google.gwt.core.ext.IncrementalGenerator. generateNonIncrementally( IncrementalGenerator.java:40)
at com.google.gwt.dev.javac.StandardGeneratorContext. runGeneratorIncrementally( StandardGeneratorContext.java: 676)
at com.google.gwt.dev.cfg.RuleGenerateWith.realize( RuleGenerateWith.java:41)
at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder. rebind(StandardRebindOracle. java:79)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind( StandardRebindOracle.java:276)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind( StandardRebindOracle.java:265)
at com.google.gwt.dev.DistillerRebindPermutationOrac le. getAllPossibleRebindAnswers( DistillerRebindPermutationOrac le.java:91)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor. handleGwtCreate(UnifyAst.java: 387)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor. handleMagicMethodCall( UnifyAst.java:465)
at com.google.gwt.dev.jjs.impl.UnifyAst$UnifyVisitor. endVisit(UnifyAst.java:255)
at com.google.gwt.dev.jjs.ast.JMethodCall.traverse( JMethodCall.java:244)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse( JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java: 117)
at com.google.gwt.dev.jjs.ast.JCastOperation.traverse( JCastOperation.java:65)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse( JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java: 117)
at com.google.gwt.dev.jjs.ast.JDeclarationStatement. traverse( JDeclarationStatement.java:48)
at com.google.gwt.dev.jjs.ast.JModVisitor$ ListContextImmutable.traverse( JModVisitor.java:170)
at com.google.gwt.dev.jjs.ast.JModVisitor. acceptWithInsertRemoveImmutabl e(JModVisitor.java:336)
at com.google.gwt.dev.jjs.ast.JBlock.traverse(JBlock.java: 83)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse( JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java: 138)
at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java: 134)
at com.google.gwt.dev.jjs.ast.JMethodBody.traverse( JMethodBody.java:82)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse( JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:265)
at com.google.gwt.dev.jjs.ast.JMethod.visitChildren(JMethod. java:449)
at com.google.gwt.dev.jjs.ast.JMethod.traverse(JMethod.java: 418)
at com.google.gwt.dev.jjs.ast.JModVisitor.traverse( JModVisitor.java:361)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:273)
at com.google.gwt.dev.jjs.ast.JModVisitor.accept( JModVisitor.java:265)
at com.google.gwt.dev.jjs.impl.UnifyAst.mainLoop(UnifyAst. java:940)
at com.google.gwt.dev.jjs.impl.UnifyAst.exec(UnifyAst.java: 665)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler. precompile( JavaToJavaScriptCompiler.java: 672)
at com.google.gwt.dev.jjs.JavaScriptCompiler.precompile( JavaScriptCompiler.java:34)
at com.google.gwt.dev.Precompile.precompile(Precompile.java: 271)
at com.google.gwt.dev.Precompile.precompile(Precompile.java: 223)
at com.google.gwt.dev.Precompile.precompile(Precompile.java: 139)
at com.google.gwt.dev.Compiler.run(Compiler.java:167)
at com.google.gwt.dev.Compiler.run(Compiler.java:132)
at com.google.gwt.dev.Compiler$1.run(Compiler.java:99)
at com.google.gwt.dev.CompileTaskRunner.doRun( CompileTaskRunner.java:55)
at com.google.gwt.dev.CompileTaskRunner. runWithAppropriateLogger( CompileTaskRunner.java:50)
at com.google.gwt.dev.Compiler.main(Compiler.java:106)
[ERROR] Errors in 'org/yournamehere/client/MainEntryPoint.java'
[ERROR] Line 32: Failed to resolve 'com.google.gwt.user.client.ui.Button' via deferred binding
C:\Users\Łukasz\Documents\NetBeansProjects\xxx\ nbproject\build-gwt.xml:331: The following error occurred while executing this line:
C:\Users\Łukasz\Documents\NetBeansProjects\xxx\ nbproject\build-gwt.xml:480: Java returned: 1
BUILD FAILED (total time: 17 seconds)
NullPointerException I marked in red, please help
RG,
Łukasz
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment