Bug 168304 Context root issue when set to other BIRT Web Project.[0603]
viewer/org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/service/ReportEngineService.java
IRunTask runTask = null;
		runTask = engine.createRunTask( runnable );
		runTask.setLocale( locale );
		runTask.setParameterValues( parameters );
		
		BirtUtility.addTask( request, runTask );
		
		if ( displayTexts != null )
		{
			Iterator keys = displayTexts.keySet( ).iterator( );
			while ( keys.hasNext( ) )
			{
				String paramName = DataUtil.getString( keys.next( ) );
				String displayText = DataUtil.getString( displayTexts.get( paramName ) );
				runTask.setParameterDisplayText( paramName, displayText );
			}
		}
		HashMap context = new HashMap( );
		
		
		Boolean isDesigner = Boolean.valueOf( ParameterAccessor.isDesigner( request ) );
		context.put( "org.eclipse.birt.data.engine.dataset.cache.option", isDesigner ); 
		context.put( EngineConstants.APPCONTEXT_BIRT_VIEWER_HTTPSERVET_REQUEST,
				request );
		context.put( EngineConstants.APPCONTEXT_CLASSLOADER_KEY,
				ReportEngineService.class.getClassLoader( ) );
		
		ParameterAccessor.pushAppContext( context, request );
		runTask.setAppContext( context );