Object value = ScriptEvalUtil.evaluateJSExpr( cx,
Object value = ScriptEvalUtil.evaluateJSAsExpr( cx,
	public boolean process( IResultObject resultObject ) throws DataException	{			logger.entering( ComputedColumnHelper.class.getName( ), "process" );		assert resultObject != null;				if ( isPrepared == false )			prepare( resultObject.getResultClass( ) );		// check if no computed columns are found as custom fields in the result		// set		if ( columnExprArray.length == 0 )		{			logger.exiting( ComputedColumnHelper.class.getName( ), "process" );			return true; // done		}				// bind new object to row script object		rowObject.setRowObject( resultObject, true );		// now assign the computed value to each of its projected computed		// columns		Context cx = Context.enter( );		try		{			// iterate through each projected computed column,			// and assign it the computed value			for ( int i = 0; i < columnExprArray.length; i++ )			{				if ( columnExprArray[i] != null						&& columnExprArray[i].trim( ).length( ) >0 )				{					Object value = ScriptEvalUtil.evaluateJSExpr( cx,							scope,							columnExprArray[i],							"ComputedColumn",							0 );					resultObject.setCustomFieldValue( columnIndexArray[i],							value );				}				else				{					throw new DataException( ResourceConstants.EXPR_INVALID_COMPUTED_COLUMN,							resultObject.getResultClass( )									.getFieldName( columnIndexArray[i] ) );				}			}		}		finally		{			Context.exit( );		}		logger.exiting( ComputedColumnHelper.class.getName( ), "process" );		return true;	}