Bug 61057 - Tomcat JDT 4.6.1 Issues.
Summary: Tomcat JDT 4.6.1 Issues.
Status: RESOLVED FIXED
Alias: None
Product: Tomcat 8
Classification: Unclassified
Component: Packaging (show other bugs)
Version: 8.5.12
Hardware: All Linux
: P2 normal (vote)
Target Milestone: ----
Assignee: Tomcat Developers Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-05-01 04:09 UTC by Durga Srinivasu Karuturi
Modified: 2017-05-04 08:23 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Durga Srinivasu Karuturi 2017-05-01 04:09:30 UTC
We have tried migrating tomcat from 8.5.11 --> 8.5.14 for latest security fixes and found our jasaperreports functionality is broken.

Reports compilation is failing with unresolved type errors even though all related jars are in classpath

1. java.util.ResourceBundle cannot be resolved to a type
                value = ((java.util.ResourceBundle)parameter_REPORT_RESOURCE_BUNDLE.getValue()); //$JR_EXPR_ID=34$
                          <---------------------->
2. net.sf.jasperreports.engine.JRDataSource cannot be resolved to a type
                value = ((net.sf.jasperreports.engine.JRDataSource)parameter_DS_controllers_by_model609.getValue()); //$JR_EXPR_ID=37$
                          <-------------------------------------->
3. net.sf.jasperreports.engine.JasperReport cannot be resolved to a type
                value = ((net.sf.jasperreports.engine.JasperReport)parameter_SR_controllers_by_model609.getValue()); //$JR_EXPR_ID=38$
                          <-------------------------------------->
4. java.util.ResourceBundle cannot be resolved to a type
                value = ((java.util.ResourceBundle)parameter_REPORT_RESOURCE_BUNDLE.getValue()); //$JR_EXPR_ID=40$
                          <---------------------->
Debugged further and found this is because of 4.6.1 JDT compiler change from 8.5.12. This is a regression issue from JDT 4.6.1

https://bugs.eclipse.org/bugs/show_bug.cgi?id=495598

I have tried 4.5.1 (from old tomcat 8.5.11) and 4.6.2 (from http://central.maven.org/maven2/org/eclipse/scout/sdk/deps/ecj/4.6.2/ecj-4.6.2.jar) it works fine.

As per Mark from mailing list confirmation, raising this issue for upgrading JDT to 4.6.2 or later to include JDT regression fixes in current 4.6.1
Comment 1 Durga Srinivasu Karuturi 2017-05-01 09:13:30 UTC
As per JDT Dev team JDT 4.6.3 (Neon) - is the most recent release with additional fixes.

https://dev.eclipse.org/mhonarc/lists/jdt-core-dev/msg03051.html
Comment 2 Mark Thomas 2017-05-02 09:56:42 UTC
We have hit a small snag with our current process:
https://issues.sonatype.org/browse/OSSRH-30961

As well as following that up, I will look to see if an alternative artefact - such as the scout one mentioned above - is suitable.
Comment 3 Konstantin Kolinko 2017-05-02 12:16:01 UTC
Tomcat 8.5.14 / lib / ecj-4.6.1.jar / META-INF/MANIFEST.MF says:

Bundle-Version: 3.12.1.v20160829-0950

As such, the internal version of component used in Eclipse 4.6.3 is likely to be 3.12.3.


Searching for "ecj" in Central repository, there is
org.eclipse.jdt : ecj : 3.12.3

published 30-Mar-2017

http://search.maven.org/#artifactdetails%7Corg.eclipse.jdt%7Cecj%7C3.12.3%7Cjar

This is the JAR that we need here.

Sha-512: 372da97d5f37095a3616c730170dc541b93acb8f50370cd9b0d81fba4583e865f0c933dc012155f26638306b82a402eaab209123cd0a979fa7c86313c0fca477
- the same as of ecj-4.6.3.jar from eclipse.org

Official download page:
http://download.eclipse.org/eclipse/downloads/drops4/R-4.6.3-201703010400/#JDTCORE
Comment 4 Violeta Georgieva 2017-05-04 08:23:41 UTC
Hi,

Thanks for the report.
The fix was committed in:
- trunk for 9.0.0.M21 onwards
- 8.5.x for 8.5.15 onwards
- 8.0.x for 8.0.44 onwards

Regards,
Violeta