Bug 121003 Data source property binding error
When there are two data source property binding, the second binding cannot be set.The exception will be reported: org.eclipse.birt.report.model.api.metadata.PropertyValueException: The value "odaDataSource" already exists. at org.eclipse.birt.report.model.api.validators.StructureListValidator.doCheckStructureList(StructureListValidator.java:223) at org.eclipse.birt.report.model.api.validators.StructureListValidator.validateForAdding(StructureListValidator.java:96) at org.eclipse.birt.report.model.core.DesignElement.checkStructureList(DesignElement.java:2642) at org.eclipse.birt.report.model.command.PropertyCommand.addItem(PropertyCommand.java:444) at org.eclipse.birt.report.model.api.DesignElementHandle.setPropertyBinding(DesignElementHandle.java:2086) at org.eclipse.birt.report.designer.internal.ui.dialogs.DataSourcePropertyBindingPage.performOk(DataSourcePropertyBindingPage.java:192)
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/validators/StructureListValidator.java
import org.eclipse.birt.report.model.api.core.IStructure;
import org.eclipse.birt.report.model.api.metadata.IPropertyDefn;
import org.eclipse.birt.report.model.api.metadata.PropertyValueException;
import org.eclipse.birt.report.model.core.DesignElement;
import org.eclipse.birt.report.model.core.Module;
import org.eclipse.birt.report.model.core.Structure;
import org.eclipse.birt.report.model.metadata.ElementPropertyDefn;
import org.eclipse.birt.report.model.metadata.PropertyDefn;
import org.eclipse.birt.report.model.metadata.PropertyType;
import org.eclipse.birt.report.model.validators.AbstractPropertyValidator;
/**
 * Validates one list property of element. The property type should structure
 * list.
 * 
 * <h3>Rule</h3>
 * The rule is that
 * <ul>
 * <li>all structures in this list property should be valid.
 * <li>the value of the property with <code>NamePropertyType</code> should be
 * unique in the structure list.
 * </ul>
 * 
 * <h3>Applicability</h3>
 * This validator is only applied to the property whose type is structure list
 * of one <code>DesignElement</code>.
 */
public class StructureListValidator extends AbstractPropertyValidator
{
	/**
	 * Name of this validator.