I posted earlier
<https://groups.google.com/d/msg/google-web-toolkit-contributors/vCELYDM2_tE/S-E_AKanEVcJ>
about a bug I was seeing in the 2.7 beta, and it looks like it's still
there in RC1. I don't have a minimal repro case yet, and it might be tough
to make one, but I do have a bit more information.
The problem occurs when trying to compute the deferred binding result for
some (not all) of the UiBinders in my application. When I run with
loglevel=DEBUG, it's suggesting that there's a compilation failure when
processing the one deferred binding rule I have in my top-level gwt.xml.
That rule looks like this:
<replace-with class="client.environment.ProdEnvironment">
<when-type-assignable class="client.environment.Environment"/>
</replace-with>
The log shows that everything works fine for most of the UiBinders - they
skip over this rule (which is always the first one they check, probably
because it's at the root of the inheritance chain) and eventually find the
right one:
Computing all possible rebind results for
'client.widget.band.BandView.MyUiBinder'
Rebinding client.widget.band.BandView.MyUiBinder
Checking rule <replace-with
class='client.environment.ProdEnvironment'/>
Checking if all subconditions are true (<all>)
<when-assignable class='client.environment.Environment'/>
No, the requested type was not assignable
No: One or more subconditions was false
Rule did not match
Found better fallback match for <replace-with
class='client.environment.ProdEnvironment'/>
Checking rule <generate-with
class='com.google.web.bindery.autobean.gwt.rebind.AutoBeanFactoryGenerator'/>
Checking if all subconditions are true (<all>)
<when-assignable
class='com.google.web.bindery.autobean.shared.AutoBeanFactory'/>
No, the requested type was not assignable
No: One or more subconditions was false
Rule did not match
Found better fallback match for <generate-with
class='com.google.web.bindery.autobean.gwt.rebind.AutoBeanFactoryGenerator'/>
/* ... snip 100's of lines checking other rules */
Checking rule <generate-with
class='com.google.gwt.uibinder.rebind.UiBinderGenerator'/>
Checking if all subconditions are true (<all>)
<when-assignable class='com.google.gwt.uibinder.client.UiBinder'/>
Yes, the requested type was assignable
Yes: All subconditions were true
Rule was a match and will be used
Invoking generator com.google.gwt.uibinder.rebind.UiBinderGenerator
Parsing CSS stylesheet
file:/var/folders/99/npwplk0x5s716r29tmllw_7h0000gn/T/uiBinder_client.widget.band_BandView_MyUiBinderImpl_GenCss_style1449650163126694696.css
Generator returned type
'client.widget.band.BandView_MyUiBinderImpl; mode
USE_ALL_NEW_WITH_NO_CACHING; in 15 ms
Rebind result was client.widget.band.BandView_MyUiBinderImpl
But for just a few UiBinders, it crashes when checking the deferred binding
rule:
Computing all possible rebind results for
'client.AddParametersView.MyUiBinder'
Rebinding client.pages.AddParametersView.MyUiBinder
Checking rule <replace-with
class='client.environment.ProdEnvironment'/>
Checking if all subconditions are true (<all>)
<when-assignable class='client.environment.Environment'/>
Tracing compile failure path for type
'client.pages.AddParametersView.MyUiBinder'
Checked 0 dependencies for errors.
[ERROR] Hint: Check the inheritance chain from your
module; it may not be inheriting a required module or a module may not be
adding its source path entries properly
[ERROR] Errors in 'client/pages/AddParametersView.java'
[ERROR] Line 33: Failed to resolve
'client.pages.AddParametersView.MyUiBinder' via deferred binding
There's no hint of what's causing the compile failure, but there are only a
few
<https://github.com/gwtproject/gwt/search?utf8=%E2%9C%93&q=logErrorTrace>
places in GWT that log that message, so someone more familiar with the
internals might be able to tell what's going on. When I remove my deferred
binding rule, the errors go away. There are no changes in my code other
than switching the dependency from 2.6.1 to 2.7.0-rc1.
Does this ring any bells around what the problem might be, or should I try
digging deeper into figuring out what's different about the UiBinders with
errors? I might have a little time this weekend but I'm not sure how deep
I'll be able to go.
--
You received this message because you are subscribed to the Google Groups "GWT
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/google-web-toolkit-contributors/ae0c9922-98b4-4e87-bdf7-732a6388ba55%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.