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
module,
					new String[]{namespace},
					LibraryException.DESIGN_EXCEPTION_DUPLICATE_LIBRARY_NAMESPACE );
		}
		
		URL url = module.findResource( libraryFileName,
				IResourceLocator.LIBRARY );
		if ( url != null
				&& module.getLibraryByLocation( url.toString( ) ) != null )
		{
			throw new LibraryException( module, new String[]{url.toString( )},
					LibraryException.DESIGN_EXCEPTION_LIBRARY_ALREADY_INCLUDED );
		}
		
		if ( url != null && url.toString( ).equals( module.getLocation( ) ) )
			throw new LibraryException(
					module,
					new String[]{namespace},
					LibraryException.DESIGN_EXCEPTION_LIBRARY_INCLUDED_RECURSIVELY );
		doAddLibrary( libraryFileName, namespace, SIMPLE_ACTION, null );
	}
	/**
	 * Drop the given libary from the design. And break all the parent/child
	 * relationships. All child element will be localized in the module.
	 * 
	 * @param library
	 *            a given library to be dropped.
	 * @throws SemanticException
	 * 
	 */