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/util/ModelUtil.java
List backRefs = referred.getClientList( );
		List referenceElements = new ArrayList( );
		for ( int i = 0; i < backRefs.size( ); i++ )
		{
			BackRef backRef = (BackRef) backRefs.get( i );
			DesignElement tmpElement = backRef.getElement( );
			if ( tmpElement == reference )
				return true;
			if ( tmpElement instanceof ReferenceableElement )
				referenceElements.add( tmpElement );
		}
		for ( int i = 0; i < referenceElements.size( ); i++ )
		{
			if ( isRecursiveReference( reference,
					(ReferenceableElement) referenceElements.get( i ) ) )
				return true;
		}
		return false;
	}
	/**
	 * Returns the URL object of the given string. If the input value is in URL
	 * format, return it. Otherwise, create the corresponding file object then
	 * return the url of the file object.
	 * 
	 * @param filePath
	 *            the file path
	 * @return the URL object or <code>null</code> if the
	 *         <code>filePath</code> cannot be parsed to the URL.
	 */
	public static URL getURLPresentation( String filePath )