Bug 146256 Birt cannot process images from a jar-based plugin
BIRT Build: 2.1.0.N20060531-1258 I have an XML document containg references to images with an Eclipse plugin jar file. For example see "severityImage" in the following example: <RESULT name="Avoid returning java.lang.Object , downcast to specific type instead" severity="Recommendation" severityId="0" severityImage="jar:file:D:\rad\eclipse\plugins\org.eclipse.tptp.platform.analysis.core_4.2.0.v200605251528.jar!/icons/rulercmdation_obj.gif"> </RESULT> The URL was generated by Eclipse API's and returns a path to an image stored within a JARred plugin. This plugin is in the same workspace as BIRT so BIRT should be able to find it. However when the BIRT report generator tries to build the report it is unable to find the image. I suspect the image loader in the BIRT report generator does not properly handle Eclipse-based URL's. This is impacting our product deliverables and the only workarounds appears to be for our code to extract the images from the plugin and write them to the filesystem, then reference that image file for BIRT.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/parser/DesignParserException.java
public static final String DESIGN_EXCEPTION_COLOR_NAME_REQUIRED = MessageConstants.DESIGN_PARSER_EXCEPTION_COLOR_NAME_REQUIRED;
	/**
	 * Use of "extends" to reference a style when "name" should be used.
	 */
	public static final String DESIGN_EXCEPTION_ILLEGAL_EXTENDS = MessageConstants.DESIGN_PARSER_EXCEPTION_ILLEGAL_EXTENDS;
	/**
	 * Image item has more then one kind of reference type.
	 */
	public static final String DESIGN_EXCEPTION_IMAGE_REF_CONFLICT = MessageConstants.DESIGN_PARSER_EXCEPTION_IMAGE_REF_CONFLICT;
	/**
	 * Image reference type is expression, but not both type expression and
	 * value expression are present in the design file.
	 */
	public static final String DESIGN_EXCEPTION_INVALID_IMAGEREF_EXPR_VALUE = MessageConstants.DESIGN_PARSER_EXCEPTION_INVALID_IMAGEREF_EXPR_VALUE;
	/**
	 * Image URL value is empty.
	 */
	public static final String DESIGN_EXCEPTION_INVALID_IMAGE_URL_VALUE = MessageConstants.DESIGN_PARSER_EXCEPTION_INVALID_IMAGE_URL_VALUE;
	/**
	 * One property is not encryptable.
	 */
	public static final String DESIGN_EXCEPTION_PROPERTY_IS_NOT_ENCRYPTABLE = MessageConstants.DESIGN_PARSER_EXCEPTION_PROPERTY_IS_NOT_ENCRYPTABLE;
	/**
	 * Image Name is empty.
	 */
	public static final String DESIGN_EXCEPTION_INVALID_IMAGE_NAME_VALUE = MessageConstants.DESIGN_PARSER_EXCEPTION_INVALID_IMAGE_NAME_VALUE;
	/**
	 * An action Drillthrough is missing the "reportName" value.
	 */
	public static final String DESIGN_EXCEPTION_ACTION_REPORTNAME_REQUIRED = MessageConstants.DESIGN_PARSER_EXCEPTION_ACTION_REPORTNAME_REQUIRED;