Bug 123035 Serialize primitive types, hashmaps and other Java classes not using Java serialization method
If you take a look at the serialized engine output, we frequently see java classes appearing. I see String class; I see PageHint class; I see Hashmap classes. All of these should be gone so that BIRT document is independent of any Java-based class serialization. DtE team will move primitive type serialization to BIRT.CORE, see 123034. Engine can use that.
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/data/dte/DataPresentationEngine.java
Iterator grpSubIter = group.getSubqueries( ).iterator( );
			Iterator grpIDSubIter = groupID.subqueryIDs.iterator( );
			while ( grpSubIter.hasNext( ) && grpIDSubIter.hasNext( ) )
			{
				ISubqueryDefinition grpSubquery = (ISubqueryDefinition) grpSubIter
						.next( );
				QueryID grpSubID = (QueryID) grpIDSubIter.next( );
				setQueryIDs( grpSubquery, grpSubID );
			}
		}
	}
	private void setExpressionID( Collection idArray, Collection exprArray )
	{
		if ( idArray.size( ) != exprArray.size( ) )
		{
			EngineException ex = new EngineException(
					"Data in report document is not couple with report design" );
			context.addException( ex );
			logger.log( Level.SEVERE, ex.getMessage( ), ex );
			return;
		}
		Iterator idIter = idArray.iterator( );
		Iterator exprIter = exprArray.iterator( );
		while ( idIter.hasNext( ) )
		{
			String id = (String) idIter.next( );
			IBaseExpression expr = (IBaseExpression) exprIter.next( );
			expr.setID( id );
		}
	}