Bug 199751 getProperty(...) returns null
I created report with user property called "version". Later i need to access that property using BIRT Runtime. I access it using getProperty() method: Report: <list-property name="userProperties"> <structure> <property name="name">version</property> <property name="type">string</property> <property name="isVisible">true</property> </structure> </list-property> <property name="version">1.0</property> Accesing using BIRT Runtime: ReportRunnable reportDesign = engine.openReportDesign("Report.rptdesign"); String version = reportDesign.getProperty("version"); When there's a library linked to Report.rptdesign, version is null. When i remove the library from report design, getProperty() returns correct value.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/util/ReportDesignSerializer.java
import org.eclipse.birt.report.model.metadata.ExtensionElementDefn;
import org.eclipse.birt.report.model.metadata.MetaDataDictionary;
import org.eclipse.birt.report.model.metadata.PeerExtensionElementDefn;
import org.eclipse.birt.report.model.metadata.PeerExtensionLoader;
import org.eclipse.birt.report.model.metadata.PropertyDefn;
import org.eclipse.birt.report.model.metadata.StructPropertyDefn;
import org.eclipse.birt.report.model.metadata.StructRefValue;
import org.eclipse.birt.report.model.metadata.StructureDefn;
/**
 * This class implemented visitor pattern, to flatten the report deisgn.
 */
public class ReportDesignSerializer extends ElementVisitor
{
	/**
	 * The created report design.
	 */
	private ReportDesign targetDesign = null;
	/**
	 * The source design tree for the visitor pattern.
	 */
	private ReportDesign sourceDesign = null;
	/**
	 * The stack that contains element in the targetDesign. It is used to set up
	 * container/content relationship.
	 */
	private Stack elements = new Stack( );
	/**
	 * Elements are not direcly in source design. Hence, it should be created
	 * with new names and added to the target design.
	 */