Bug 157592 Inheritance of Datasource broken
If I create a Report using a datasource of a library first everything seems to be ok. <oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="classic" id="4" extends="dSourceAppName.classic"/> After I created a dataset it looks like <oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="classic" id="4" extends="dSourceAppName.classic"> <property name="odaDriverClass">com.mysql.jdbc.Driver</property> <property name="odaURL">jdbc:mysql://localhost/classicmodels</property> <property name="odaUser">birt</property> <encrypted-property name="odaPassword">YmlydDAyODYy</encrypted-property> </oda-data-source> It also happens to a library! When I change the library (publish to resource folder) the new datasource isn't used.
model/org.eclipse.birt.report.model.adapter.oda/src/org/eclipse/birt/report/model/adapter/oda/ModelOdaAdapter.java
{
		List columns = new ArrayList( );
		List hints = new ArrayList( );
		ResultSetColumnInfo.updateResultSetColumnList( structList, columns,
				hints );
		PropertyHandle propHandle = setHandle
				.getPropertyHandle( OdaDataSetHandle.RESULT_SET_PROP );
		propHandle.setValue( null );
		if ( !columns.isEmpty( ) )
		{
			for ( int i = 0; i < columns.size( ); i++ )
				propHandle.addItem( columns.get( i ) );
		}
		propHandle = setHandle
				.getPropertyHandle( OdaDataSetHandle.COLUMN_HINTS_PROP );
		if ( !hints.isEmpty( ) )
		{
			for ( int i = 0; i < hints.size( ); i++ )
			{
				ColumnHint hint = (ColumnHint) hints.get( i );
				ColumnHintHandle oldHint = ResultSetsAdapter.findColumnHint(
						(String) hint.getProperty( null,
								ColumnHint.COLUMN_NAME_MEMBER ), setHandle
								.columnHintsIterator( ) );
				if ( oldHint == null )
					propHandle.addItem( hints.get( i ) );
				else
				{
					oldHint.setDisplayName( (String) hint.getProperty( null,
							ColumnHint.DISPLAY_NAME_MEMBER ) );