Bug 118592 Report error
please see attached design file.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/executor/cache/ResultObjectUtil.java
byte[] rowDataBytes;
				
		ByteArrayInputStream bais;
		DataInputStream dis;
		for ( int i = 0; i < length; i++ )
		{
			rowLen = IOUtil.readInt( bis );
			rowDataBytes = new byte[rowLen];
			bis.read( rowDataBytes );
			
			bais = new ByteArrayInputStream( rowDataBytes );
			dis = new DataInputStream( bais );
			Object[] obs = new Object[columnCount];
			for ( int j = 0; j < columnCount; j++ )
			{
				Class fieldType = typeArray[j];
				if ( dis.readByte( ) == 0 )
				{
					obs[j] = null;
					continue;
				}
				
				if ( fieldType.equals( Integer.class ) )
					obs[j] = new Integer( dis.readInt( ) );
				else if ( fieldType.equals( Double.class ) )
					obs[j] = new Double( dis.readDouble( ) );
				else if ( fieldType.equals( BigDecimal.class ) )
					obs[j] = new BigDecimal( dis.readUTF( ) );
				else if ( fieldType.equals( Date.class ) )
					obs[j] = new Date( dis.readLong( ) );