Bug 191687 ArrayIndexOutOfBoundsException occurs when open the attache report design file
Description: ArrayIndexOutOfBoundsException occurs when open the attache report design file Build number: 2.2.0.v20070608-0630 Steps to reproduce: 1, Open the attache report design Expected result: If the report design is invalud, we just pops up a warning message to tell user Actual result: ArrayIndexOutOfBoundsException occurs Error log: java.lang.ArrayIndexOutOfBoundsException: 1 at org.eclipse.birt.report.designer.internal.ui.editors.schematic.border.TableBorderHelper.initialize(TableBorderHelper.java:165) at org.eclipse.birt.report.designer.internal.ui.editors.schematic.border.TableBorderHelper.updateCellBorderInsets(TableBorderHelper.java:287) at org.eclipse.birt.report.designer.internal.ui.layout.TableLayout.layout(TableLayout.java:146)
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/elements/table/LayoutUtil.java
* 
	 * @param element
	 *            the element where the search begins
	 * @return a nearest <code>TableItem/GridItem</code> container
	 */
	public static ReportItem getCompoundContainer( IDesignElement element )
	{
		DesignElement tmpElement = (DesignElement) element;
		
		int maxLevel = 3;
		for ( int i = 0; i < maxLevel; i++ )
		{
			if ( tmpElement == null || tmpElement instanceof TableItem
					|| tmpElement instanceof GridItem )
				return (ReportItem) tmpElement;
			tmpElement = tmpElement.getContainer( );
		}
		return null;
	}
	/**
	 * Checks whether the layout table is valid or not. The invalid table has
	 * following cases:
	 * <ul>
	 * <li>has overlapped area.
	 * <li>column counts in rows are different.
	 * <li>empty rows and columns.
	 * </ul>
	 * 
	 * @param table
	 *            the table