View Full Version : Neptune Theme GWT Compile Errors

25 Nov 2014, 2:01 PM
I have an application that compiles correctly using the default Blue theme, however, when I switched this to use the more clean looking Neptune theme, I started getting the following compiler error:

[ERROR] Errors in 'com/sencha/gxt/widget/core/client/menu/AdapterMenuItem.java'
[ERROR] Line 49: Rebind result 'com.sencha.gxt.widget.core.client.menu.Item.ItemAppearance' must be a class

After looking through the Base and Blue themes, I noticed that there are deferred binding rules for the ItemAppearance class that do not exist in the Neptune theme. I'm using GXT 3.1.1 and the Neptune 3.1.1 jars, so it doesn't seem to be an issue of a mismatch. Also, I have inherited both the GXT and Neptune theme modules in my module file (in that order).

Is this a defect, or is there something that should be happening during the compile that isn't because I have things misconfigured in some way? Any help would be appreciated, thanks!

26 Nov 2014, 12:10 AM
Did you add this line of code to your module descriptor?

<inherits name='com.sencha.gxt.theme.neptune.Theme' />

26 Nov 2014, 5:59 AM
Yes, that line was in my module descriptor. I guess I find it curious that the MenuAdapter class's constructor tries to GWT.create() an ItemAppearance, yet the Neptune theme doesn't have a deferred binding rule for it. In this case, is it supposed to find the rule from the base theme?

2 Dec 2014, 8:43 AM
In order to workaround the problem, I've had to manually add the rebind rule for ItemAppearance objects, seen below:

<replace-with class="com.sencha.gxt.theme.neptune.client.base.menu.Css3MenuItemAppearance">
<when-type-is class="com.sencha.gxt.widget.core.client.menu.Item.ItemAppearance"/>

I would still like to know if this is an oversight or omission, or if anyone could think of a way I could have misconfigured my application to make the addition of this rebind rule necessary.

28 Jul 2015, 5:54 AM
I had exactly the same problem running simple app made on different computer. Difference was that that first workstation used GWT SDK 2.6.0. Switching from 2.7.0 to 2.6.0 helped.