Note that there are some explanatory texts on larger screens.

plurals
  1. POGWT 2 CssResource how to
    primarykey
    data
    text
    <p>I have a GWT 1.7 application and I want to upgrade it to GWT 2 Milestone 2. The application uses 2 big external CSS files. In GWT 1.7 I had a public folder and put both the CSS files in the folder and my application compiled and worked fine. Now for GWT 2 I have created a ResourceBundle class and put all image sprites and CSS as follows:</p> <pre><code>public interface ResourceBundle extends ClientBundle { public static final ResourceBundle INSTANCE = GWT.create(ResourceBundle.class); @Source("com/web/tech/public/stylesheet1.css") public Css stylesheet1(); @Source("com/web/tech/public/stylesheet2.css") public Css stylesheet2(); @Source("com/docobo/keswick/keswickweb/public/images/organisnew.gif") public ImageResource add_org(); ..... } </code></pre> <p>The Css class is an empty class extending CssResource :</p> <pre><code>public interface Css extends CssResource{ } </code></pre> <p>Then in my onModuleLoad() I use :</p> <pre><code>StyleInjector.inject(ResourceBundle.INSTANCE.stylesheet1().getText()); StyleInjector.inject(ResourceBundle.INSTANCE.stylesheet2().getText()); </code></pre> <p>When I compile I get the following error:</p> <pre><code> Rebinding com.docobo.keswick.keswickweb.client.ClientResources.ResourceBundle Invoking &lt;generate-with class='com.google.gwt.resources.rebind.context.InlineClientBundleGenerator'/&gt; Creating assignment for gxt_gray() Replacing CSS class names [ERROR] The following unobfuscated classes were present in a strict CssResource: [ERROR] x-tab-scroller-left [ERROR] x-tab-strip-disabled [ERROR] ......loads of other styles Fix by adding String accessor method(s) to the CssResource interface for obfuscated classes, or using an @external declaration for unobfuscated classes. </code></pre> <p>Following the above instruction when I use @external above all my style classes inside the CSS file I get the following error :</p> <pre><code> [ERROR] Generator 'com.google.gwt.resources.rebind.context.InlineClientBundleGenerator' threw threw an exception while rebinding 'com.docobo.keswick.keswickweb.client.ClientResources.ResourceBundle' java.lang.StringIndexOutOfBoundsException: String index out of range: -2 at java.lang.String.substring(Unknown Source) at com.google.gwt.resources.css.GenerateCssAst$GenerationHandler.ignorableAtRule(GenerateCssAst.java:236) at org.w3c.flute.parser.Parser.atRuleDeclaration(Parser.java:1178) at org.w3c.flute.parser.Parser.ignoreStatement(Parser.java:622) at org.w3c.flute.parser.Parser.parserUnit(Parser.java:452) at org.w3c.flute.parser.Parser.parseStyleSheet(Parser.java:107) at org.w3c.flute.parser.Parser.parseStyleSheet(Parser.java:119) at com.google.gwt.resources.css.GenerateCssAst.exec(GenerateCssAst.java:663) at com.google.gwt.resources.rg.CssResourceGenerator.prepare(CssResourceGenerator.java:506) at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.initAndPrepare(AbstractClientBundleGenerator.java:531) at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.initAndPrepare(AbstractClientBundleGenerator.java:502) at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.generate(AbstractClientBundleGenerator.java:179) at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:49) at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.tryRebind(StandardRebindOracle.java:108) at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:54) at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:154) at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:143) at com.google.gwt.dev.Precompile$DistillerRebindPermutationOracle.getAllPossibleRebindAnswers(Precompile.java:315) at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.doFindAdditionalTypesUsingRebinds(WebModeCompilerFrontEnd.java:107) at com.google.gwt.dev.jdt.AbstractCompiler$CompilerImpl.process(AbstractCompiler.java:161) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:444) at com.google.gwt.dev.jdt.AbstractCompiler$CompilerImpl.compile(AbstractCompiler.java:84) at com.google.gwt.dev.jdt.AbstractCompiler$CompilerImpl.compile(AbstractCompiler.java:196) at com.google.gwt.dev.jdt.AbstractCompiler$CompilerImpl.access$300(AbstractCompiler.java:70) at com.google.gwt.dev.jdt.AbstractCompiler.compile(AbstractCompiler.java:481) at com.google.gwt.dev.jdt.BasicWebModeCompiler.getCompilationUnitDeclarations(BasicWebModeCompiler.java:113) at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.getCompilationUnitDeclarations(WebModeCompilerFrontEnd.java:49) at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java:415) at com.google.gwt.dev.jjs.JavaScriptCompiler.precompile(JavaScriptCompiler.java:32) at com.google.gwt.dev.Precompile.precompile(Precompile.java:507) at com.google.gwt.dev.Precompile.precompile(Precompile.java:408) at com.google.gwt.dev.Compiler.run(Compiler.java:194) at com.google.gwt.dev.Compiler$1.run(Compiler.java:145) at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:89) at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:83) at com.google.gwt.dev.Compiler.main(Compiler.java:152) </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload