Bug 152300 Model api is wrong.
In the LibrarCommand class,the method reloadLibrary , code lije this: activityStack.commit( ); // clears the activity stack to avoid potential problems. activityStack.flush( ); LibraryReloadedEvent event = new LibraryReloadedEvent( module .getLibraryByLocation( url.toExternalForm( ) ) ); module.broadcast( event ); Please first fire model event,then fire the commandstack event.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/command/LibraryCommand.java
record = new LibraryRecord( module, library, true );
		if ( action == RELOAD_ACTION )
			record = new LibraryRecord( module, library, overriddenValues );
		getActivityStack( ).execute( record );
		
		IncludedLibrary includeLibrary = StructureFactory
				.createIncludeLibrary( );
		includeLibrary.setFileName( libraryFileName );
		includeLibrary.setNamespace( namespace );
		ElementPropertyDefn propDefn = module
				.getPropertyDefn( Module.LIBRARIES_PROP );
		PropertyCommand propCommand = new PropertyCommand( module, module );
		propCommand.addItem( new CachedMemberRef( propDefn ), includeLibrary );
		activityStack.commit( );
	}
	/**
	 * Unresolves extends reference for the given element. Besides the change on
	 * extends reference, all virtual elements in the given element are removed.
	 * Their element references are also cleared. Moreover, their names are
	 * removed from name spaces.
	 * 
	 * @param module
	 *            the root of the element
	 * @param child
	 *            the design element
	 * @return the map containing local values of virtual elements. The key is
	 *         the base id of virtual element and the value is property
	 *         name/value pair.
	 * @throws SemanticException
	 *             if error occurs during removing virtual elements.