Bug 919447
| Summary: | GWT fails on IBM Java 1.6 and 1.7 | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Retired] JBoss Enterprise WFK Platform 2 | Reporter: | rfalhar | ||||
| Component: | GWT | Assignee: | Jonathan Fuerth <jfuerth> | ||||
| Status: | CLOSED INSUFFICIENT_DATA | QA Contact: | Tomas Repel <trepel> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 2.2.0 | CC: | csadilek, kpiwko, myarboro, oskutka, ppenicka, rruss | ||||
| Target Milestone: | --- | ||||||
| Target Release: | 2.4.0 | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Known Issue | |||||
| Doc Text: |
GWT attempts to load pre-compiled GWT module archives (.gwtar files) to increase performance. Consequently, building GWT examples shipped with this release fails with the IBM implementations of the Java Developement Kit (both 1.6 and 1.7).
To work around the issue, use the -Dgwt.usearchives=false parameter with gwt-maven-plugin to disable loading of the pre-compiled archives.
|
Story Points: | --- | ||||
| Clone Of: | Environment: |
IBM JDK 1.6, 1.7
|
|||||
| Last Closed: | 2013-07-16 19:13:16 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
rfalhar
2013-03-08 13:54:15 UTC
A bit of Googling turned up this, which appears to be the fix we're looking for: https://code.google.com/p/google-web-toolkit/issues/detail?id=7530#c15 It sounds like gwt-user.jar contains some serialized objects, and the autogenerated serialVersionUID fields differ between the Oracle and IBM JREs.. so we get a serialization error at compile time, when the compiler tries to load these objects into memory. Fortunately, these serialized objects are just a performance optimization, and there is a command-line option to tell the GWT compiler to ignore them. Radek, can you check if adding -Dgwt.usearchives=false to the GWT compiler command line fixes this issue? Note also that you will need to delete all gwt-unitCache directories within the project, because these also contain serialized objects that may have been produced by a previous compile with the Oracle JRE. Jonathan, we cannot do that, because we use gwt-maven-plugin and that doesn't support that option : https://jira.codehaus.org/browse/MGWT-349 And we are always running our tests from clear repository, so there are no gwt-unitCache to delete. Karel, that doesn't seem related to our problem. Adding <extraJvmArgs>-Dgwt.usearchives=false</extraJvmArgs> to gwt-maven-plugin fixes the issue. Thanks for the doc text, Petr. Looks good to me! Release note is correct and workaround works. But issue will be addressed in 2.3.0 The upstream issue is still open: https://code.google.com/p/google-web-toolkit/issues/detail?id=7530 If the gwt.usearchives=false system property is not a satisfactory solution for WFK 2.4, we will have to remove the gwtar files from the gwt-user.jar when packaging it for WFK, as explained in this comment: https://code.google.com/p/google-web-toolkit/issues/detail?id=7530#c15 However, I would recommend against that solution: slowing down GWT compiles for everybody just so IBM JDK users don't have to add a line to their project's pom is a poor tradeoff in my opinion. Migrated to JIRA Marek Novotny <mnovotny> made a comment on jira WFK2-37 Clearing proposed Target Release value from 2.0.0.GA to Unknown |