Groups
Groups

GWT Deferred Binding Error – UiBinder Not Resolved from Dependent Module (phoenix-air)

41 views
Skip to first unread message

Arpan Ameta

unread,
Mar 20, 2026, 8:19:56 AM (5 days ago) Mar 20
to GWT Users

Hi Team,

I’m facing an issue with GWT deferred binding while working with a modular Maven setup and would appreciate any guidance.

Error:

Failed to resolve AwbCustomerUiBinder via deferred binding

🧩 Project Setup

We have a multi-module Maven project:

  • phoenix-air → packaged as a JAR (contains GWT UI, UiBinder files)

  • phoenix-main → WAR (main application)

  • Parent project builds all modules

In application.gwt.xml, we are inheriting the air module:

<inherits name="com.shipco.phoenix.air.Air"/>

The dependency is also added in phoenix-main:

<dependency> <groupId>phoenix</groupId> <artifactId>phoenix-air</artifactId> <version>1.0</version> </dependency>

📄 Air Module Details

In phoenix-air:

  • AwbCustomer.java uses UiBinder:

interface AwbCustomerUiBinder extends UiBinder<Widget, AwbCustomer> {} private static AwbCustomerUiBinder uiBinder = GWT.create(AwbCustomerUiBinder.class);
  • Corresponding file exists:

AwbCustomer.ui.xml
  • Both are in the same package:

modules/awb/client/airimport/view/awbpopup/
  • air.gwt.xml includes:

<source path="modules/awb/client"/>
  • POM includes .ui.xml and .gwt.xml in resources

🧠 Additional Context
  • Other modules with similar setup seem to work (possibly not using UiBinder or structured differently)

  • Using GWT 2.12.x

  • Maven build with net.ltgt.gwt.maven:gwt-maven-plugin


Any insights or best practices for structuring GWT modules across Maven projects would be really helpful.

Thanks in advance!

Best regards,
Arpan Ameta


Thomas Broyer

unread,
Mar 20, 2026, 8:48:18 AM (5 days ago) Mar 20
to GWT Users


On Friday, March 20, 2026 at 1:19:56 PM UTC+1 arpanam...@gmail.com wrote:

>   * Maven build with net.ltgt.gwt.maven:gwt-maven-plugin
> ----


> Any insights or best practices for structuring GWT modules across Maven projects would be really helpful.

For a client-only library, use `<packaging>gwt-lib</packaging>`, and then depend on it using <type>gwt-lib</type> for better running/debugging support: https://tbroyer.github.io/gwt-maven-plugin/codeserver.html

Arpan Ameta

unread,
Mar 24, 2026, 2:58:33 AM (yesterday) Mar 24
to GWT Users

Hi Team,

I’m currently facing an issue after upgrading our project to GWT 2.12.0 and JDK 17, and I’d really appreciate any guidance or suggestions from the community.

While most of our modules are compiling and working fine post-upgrade, one specific module is failing during GWT compilation with the following error:

[ERROR] Failed to resolve 'com.shipco.air.modules.awb.client.airimport.view.awbpopup.AwbCustomer.AwbCustomerUiBinder' via deferred binding

From the logs, it appears to be a UiBinder-related issue during deferred binding. The same pattern and structure are used in other modules, and they are working without any problems.

A few points to highlight:

  • This issue started only after upgrading to GWT 2.12.0 and JDK 17
  • Other UiBinder-based components in different modules are compiling successfully
  • The .ui.xml file exists and is correctly placed
  • Module inheritance and source paths appear to be properly configured
  • There is also a custom generator involved (MonitorServiceInterfaceProxyGenerator), though it's used elsewhere without issues

At this point, I’m unsure whether this is:

  • A compatibility issue with GWT 2.12.0 or JDK 17
  • A stricter validation introduced in newer versions
  • Or something specific being missed in this module

If anyone has encountered a similar issue or has suggestions on what to check next, your help would be greatly appreciated.

Thanks in advance for your support!

Craig Mitchell

unread,
Mar 24, 2026, 5:23:06 AM (23 hours ago) Mar 24
to GWT Users
I assume you get this error when running, and the GWT Code Server fails to compile that class.

If you've misspelt or misplaced the ui.xml file, you should also get an error like:

[ERROR] Unable to find resource: blah/blah/.../AwbCustomer.ui.xml

Do you see that error?

Arpan Ameta

unread,
Mar 24, 2026, 7:56:33 AM (20 hours ago) Mar 24
to GWT Users
Screenshot 2026-03-24 165332.pngScreenshot 2026-03-24 172248.pngScreenshot 2026-03-24 165414.png

Hi Craig,

Thanks for your response.

Yes, the error occurs during compilation (GWT Code Server / compile), but interestingly I do not see the “Unable to find resource” error for the AwbCustomer.ui.xml file.

The .ui.xml file is present in the correct package and follows the same naming convention as other working modules. That’s why this is a bit confusing — if it were a missing or misplaced file, I would expect that specific error to show up.

In this case, the compilation fails directly with the deferred binding error:

Failed to resolve 'AwbCustomer.AwbCustomerUiBinder' via deferred binding

Also worth noting:

  • Other UiBinder classes in different modules are compiling fine
  • This issue started only after upgrading to GWT 2.12.0 and JDK 17
  • The structure and setup of this module is consistent with others that are working

Because of this, I’m wondering if this could be related to stricter checks in the newer GWT version or something subtle being missed in this particular class/module.

Please let me know if there’s anything specific you’d recommend checking beyond the usual .ui.xml placement — happy to dig deeper.

Thanks again for your help!

Michael Conrad

unread,
Mar 24, 2026, 9:04:50 AM (19 hours ago) Mar 24
to google-we...@googlegroups.com
I don't know if it helps or not, but we once had an issue like this when the xml was in resources/ and the java was in java/, the resources/ wasn't on the build path and we had to adjust that part - clueless how it worked before the upgrade though - or if it was something that was accidentally typo-ed somehow during the upgrade.
--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-tool...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/4680e971-840e-4b51-b8a1-6361bfe6f392n%40googlegroups.com.

Craig Mitchell

unread,
Mar 24, 2026, 7:03:36 PM (9 hours ago) Mar 24
to GWT Users
Is your screenshot saying there is an error with the MonitorServiceInterfaceProxyGenerator?  I've no clue what that is, but that error could be causing the error with the AwbCustomer.

Arpan Ameta

unread,
2:43 AM (1 hour ago) 2:43 AM
to GWT Users
Screenshot 2026-03-25 120849.pngScreenshot 2026-03-25 120822.png

Hi Craig,

Thanks for pointing that out.

Yes, in the screenshot I shared, there is indeed an error related to MonitorServiceInterfaceProxyGenerator. However, this is a custom generator used across multiple modules in our project, and those modules are compiling and working fine even after the upgrade.

That’s why I’m a bit unsure if this generator is the root cause here, or if it’s just a side effect of something failing earlier in the compilation chain.

Also, the failure still surfaces specifically at:

AwbCustomer.AwbCustomerUiBinder

which makes it look like a UiBinder deferred binding issue at first glance.

That said, I agree with your point — if the generator fails, it could potentially break the binding process. I’ll try isolating this further by:

  • Checking if this module has any differences in how the generator is used
  • Verifying if any recent changes or stricter rules in GWT 2.12.0 / JDK 17 are affecting it
  • Temporarily disabling or bypassing the generator (if possible) to see if the error persists

I’ll update once I have more findings.

Thanks again for your help!

Reply all
Reply to author
Forward
0 new messages
Search
Clear search
Close search
Google apps
Main menu