Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 340000 - Adapt RAP to current icu.base version
Summary: Adapt RAP to current icu.base version
Status: RESOLVED FIXED
Alias: None
Product: RAP
Classification: RT
Component: Releng (show other bugs)
Version: 1.4   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 1.5 M1   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 340310
Blocks:
  Show dependency tree
 
Reported: 2011-03-15 07:20 EDT by Ralf Sternberg CLA
Modified: 2012-01-31 04:54 EST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ralf Sternberg CLA 2011-03-15 07:20:40 EDT
The following bundles import packages from icu.base < 4.3.0. Since M6, icu.base has been upgraded from 4.2.1 to 4.4.2.

* org.eclipse.rap.jface.databinding: com.ibm.icu.text;version="[3.4.0,4.3.0)" 
* org.eclipse.rap.ui.cheatsheets: com.ibm.icu.text;version="[3.4.0,4.3.0)"
* org.eclipse.rap.ui.forms: com.ibm.icu.text;version="[3.4.0,4.3.0)"
* org.eclipse.rap.ui.workbench: com.ibm.icu.text;version="[3.4.0,4.3.0)", com.ibm.icu.util;version="[3.4.0,4.3.0)"
Comment 1 Ralf Sternberg CLA 2011-03-15 10:27:35 EDT
Built M6 with icu.base 4.2.1 again as this version is known to work, we should upgrade for M7.
Comment 2 Holger Staudacher CLA 2011-04-26 06:02:36 EDT
I checked the original eclipse.ui bundles and these bundle don't have a version constraint in their mainfests for icu.base. So, I removed the contraint from our manifests and committed the changes to CVS HEAD.

Sadly our tests are failing when we use the new icu.base version. Here is the stack trace. For now I will not update the icu.base version on our build server until we can figure out why this error happens.

Error Message

com/ibm/icu/text/BreakIterator (Unsupported major.minor version 49.0)
Stacktrace

java.lang.UnsupportedClassVersionError: com/ibm/icu/text/BreakIterator (Unsupported major.minor version 49.0)
	at java.lang.ClassLoader.defineClass0(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
	at org.eclipse.ui.internal.forms.widgets.TextSegment.computeTextFragments(TextSegment.java:746)
	at org.eclipse.ui.internal.forms.widgets.TextSegment.advanceLocator(TextSegment.java:279)
	at org.eclipse.ui.internal.forms.widgets.Paragraph.computeRowHeights(Paragraph.java:138)
	at org.eclipse.ui.internal.forms.widgets.Paragraph.layout(Paragraph.java:157)
	at org.eclipse.ui.forms.widgets.FormText$FormTextLayout.layout(FormText.java:359)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:511)
	at org.eclipse.swt.widgets.Composite.layout(Composite.java:330)
	at org.eclipse.swt.widgets.Composite.layout(Composite.java:289)
	at org.eclipse.swt.widgets.Composite.layout(Composite.java:252)
	at org.eclipse.ui.forms.widgets.FormText.setText(FormText.java:732)
	at org.eclipse.ui.forms.widgets.FormText_Test.testComputeSize(FormText_Test.java:57)
Comment 3 Ivan Furnadjiev CLA 2011-04-26 06:16:10 EDT
In version 4.4.2 they changed the execution environment to 1.5 - see com.ibm.icu_4.4.2.v20110208.jar manifest.mf. It was 1.3 in com.ibm.icu_4.2.1.v20100412.
Comment 4 Ralf Sternberg CLA 2011-05-04 06:25:53 EDT
Since icu has been upgraded to Java 1.5, we have to keep the old icu.base in our target platform for the 1.4 release.
We removed the version ranges from our bundle manifests, as the platform bundles do so as well.
Starting with RAP 1.5, we'd like to move to Java 1.5 too (bug 344334), so we can fix this issue in the next release.
Comment 5 Ralf Sternberg CLA 2012-01-31 04:54:01 EST
* All Up to the last RAP 1.4 service release, icu.base version 4.2.1 is used.
* In RAP 1.5, we upgraded to J2SE-1.5 and use the current icu.base version from the platform again (4.4.2).
* Since the package imports are unversioned in the original bundles, I'll leave them unversioned in the RAP bundles as well.