Bug 252834

Summary: Use Jars
Product: z_Archived Reporter: Bjorn Freeman-Benson <bjorn.freeman-benson>
Component: BIRTAssignee: Birt-Build <Birt-Build-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P1 CC: bluesoldier, jtatchel, lzhu, wenfeng.fwd, wyan, zqian
Version: unspecified   
Target Milestone: 2.5.0   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on: 253859    
Bug Blocks: 252800    

Description Bjorn Freeman-Benson CLA 2008-10-30 13:11:25 EDT
+++ This bug was initially created as a clone of Bug #252800 +++

Projects must use jar'ed plug-ins (with unpack=false) unless authorized by the planning council for technical reasons. Nested jars should be avoided if possible since it creates problems for projects that has dependencies to such plug-ins. The OSGi runtime is fine with it but the compiler is not able to handle classpaths that contain nested jars. In case only one nested jar exists, it is often better to expand the contents of that jar into the root folder (i.e. unnest the jar). If a plug-in contains large files that are frequently used (opened and closed), a jar'ed plug-in might degrade performance significantly since the file must be decompressed each time it is opened.
Comment 1 Xiaoying Gu CLA 2008-11-03 01:19:20 EST
Besides source plugins and 3rd party jars, below plugins are in folder format now:

org.eclipse.birt.chart.cshelp
org.eclipse.chart.doc.isv
org.eclipse.birt.cshelp
org.eclipse.birt.doc.isv
org.eclipse.birt.doc

org.eclipse.birt.report.data.oda.jdbc
org.eclipse.birt.report.data.oda.sampledb
org.eclipse.birt.report.designer.ui
org.eclipse.birt.engine.fonts
org.eclipse.birt.report.viewer
org.eclipse.birt.resources
org.eclipse.birt.sdk


Please review if these jar can be shipped as Jars. 

Comment 2 Wei Yan CLA 2008-11-04 23:14:57 EST
org.eclipse.birt.engine.fonts

can't be shipped with JARS. It is designed to store the font files which are usually big.
Comment 3 Wenfeng Li CLA 2009-03-04 14:55:40 EST
1. org.eclipse.birt.report.data.oda.jdbc
Can not be jarred, since user could have a need to put their JDBC drivers in the plugin.

2. org.eclipse.birt.report.viewer
Can not be jarred, user might want to put their customer JSP pages in the plugin.

3. org.eclipse.birt.resources
Can not be jarred, user might want to put their report resources, such as image, library, in this plugin.

cc Jane to comment on the on line help plugins..
Comment 4 Wenfeng Li CLA 2009-03-04 14:56:40 EST
(In reply to comment #2)
> org.eclipse.birt.engine.fonts
> can't be shipped with JARS. It is designed to store the font files which are
> usually big.

We also want to let user to add font files in the bundle.
Comment 5 Jane Tatchell CLA 2009-03-04 18:36:33 EST
I am not aware of any issues with JARing the doc and cshelp plug-ins. As far as I know, they should just work transparently. But I have not tested these plug-ins in JAR format.
Comment 6 Xiaoying Gu CLA 2009-03-04 21:44:45 EST
Please refer to the bug (In reply to comment #4)
> (In reply to comment #2)
> > org.eclipse.birt.engine.fonts
> > can't be shipped with JARS. It is designed to store the font files which are
> > usually big.
> We also want to let user to add font files in the bundle.

We have already changed these doc plugins in JAR format. Please refer to bugzilla bug #253859.
Comment 7 Zhiqiang Qian CLA 2009-03-04 22:00:04 EST
Currently the org.eclipse.birt.report.designer.ui is originally used as the default custom templates folder, so it can not be jarred in the meantime, I will check if this can be moved to the org.eclipse.birt.resources plugin.
Comment 8 Zhiqiang Qian CLA 2009-03-04 22:50:10 EST
The default custom templates folder has been set to "org.eclipse.birt.resources/custom-templates", org.eclipse.birt.report.designer.ui plugin can be jarred now.
Comment 9 Lin Zhu CLA 2009-03-10 02:01:01 EDT
org.eclipse.birt.report.data.oda.sampledb

can't be shipped with JARS. It is designed to contains a sample db jar file. It is frequently used (opened and closed), So it'd better do not jar-ed this plugin.
Comment 10 Xiaoying Gu CLA 2009-03-10 02:18:55 EDT
All plugins are in JAR format now except for:

1.org.eclipse.birt.report.data.oda.jdbc
2.org.eclipse.birt.report.data.oda.sampledb
3.org.eclipse.birt.engine.fonts
4.org.eclipse.birt.report.viewer
5.org.eclipse.birt.resources

The reasons have been listed in above comments.


Set as fixed for Galileo.