Bug 201038 The joint dataset from library can not be used and exception occurs when preview in dataset[07]
Description: The joint dataset from library can not be used and exception occurs when preview in dataset[07] Build number: 2.2.1.v20070824-0630 Steps to reproduce: 1, New a library and create two datasets ds1 and ds2 2, Creata a joint dataset ds3 using ds1 and ds2 3, Publish the library 4, New a report and using the Joint dataset and preview in joint dataset Expected result: The preview should be successful Actual result: Exception occurs Error log: java.lang.ClassCastException: org.eclipse.birt.report.model.metadata.ElementRefValue at org.eclipse.birt.report.model.command.AbstractPropertyCommand.setupStructureContext(AbstractPropertyCommand.java:534) at org.eclipse.birt.report.model.command.AbstractPropertyCommand.makeLocalCompositeValue(AbstractPropertyCommand.java:440) at org.eclipse.birt.report.model.command.ComplexPropertyCommand.doRemoveItem(ComplexPropertyCommand.java:456) at org.eclipse.birt.report.model.command.ComplexPropertyCommand.removeItem(ComplexPropertyCommand.java:393) at org.eclipse.birt.report.model.api.PropertyHandle.removeItem(PropertyHandle.java:317) at org.eclipse.birt.report.model.api.SimpleValueHandle.removeItem(SimpleValueHandle.java:453) at org.eclipse.birt.report.model.api.JointDataSetHandle.removeDataSet(JointDataSetHandle.java:128) at org.eclipse.birt.report.designer.data.ui.dataset.JointDataSetPage.modifyJointCondition(JointDataSetPage.java:989) at org.eclipse.birt.report.designer.data.ui.dataset.JointDataSetPage.canLeave(JointDataSetPage.java:963) at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog.showPage(AbstractPropertyDialog.java:554) at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog.showSelectionPage(AbstractPropertyDialog.java:467) at org.eclipse.birt.report.designer.data.ui.dataset.DataSetEditor.showSelectionPage(DataSetEditor.java:820) at org.eclipse.birt.report.designer.data.ui.property.AbstractPropertyDialog$3.run(AbstractPropertyDialog.java:425)
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/command/AbstractPropertyCommand.java
*            reference to a list.
	 * @param item
	 *            the item to check
	 * @throws SemanticException
	 *             if the item has any member with invalid value or if the given
	 *             structure is not of a valid type that can be contained in the
	 *             list.
	 */
	protected void checkItemName( MemberRef memberRef, String newName )
			throws SemanticException
	{
		PropertyDefn propDefn = memberRef.getPropDefn( );
		Structure structure = memberRef.getStructure( module, element );
		List errors = StructureListValidator.getInstance( )
				.validateForRenaming( element.getHandle( module ), propDefn,
						memberRef.getList( module, element ), structure,
						memberRef.getMemberDefn( ), newName );
		if ( errors.size( ) > 0 )
		{
			throw (PropertyValueException) errors.get( 0 );
		}
	}
	/**
	 * Adjusts references to an element that is to be deleted. The element to be
	 * deleted is one that has references in the form of element reference
	 * properties on other elements. These other elements, called "clients",
	 * each contain a property of type element reference and that property
	 * refers to this element. Each reference is recorded with a "back pointer"
	 * from the referenced element to the client. That back pointer has both a
	 * pointer to the client element, and the property within that element that