Cómo trabajar con alias en JPQL

Estoy tratando de obtener algunos valores de una tabla H2 db. La consulta que hace lo que necesito es esta:

SELECT cast(creationDate as date) as DATE, SUM(paymentValue) as TOTAL,fxRate 
FROM payment 
group by DATE

where "creationDate", "paymentValue", "fxRate" son columnas de la tabla "pago". CreationDate es una marca de tiempo, así que solo tengo que obtener la fecha. Cuando trato de escribirlo en Java

 @Query("SELECT cast(creationDate as date) as daydate , SUM(paymentValue) as value1, fxRate as value2 FROM payment " + 
            "group by cast(creationDate as date)")
    List<Payment> findPaymentValuePerDay ();

Me sale el error[Ljava.lang.Object; cannot be cast to ...entity.Payment.

Traté de usar un objeto diferente llamado GraphDto que tiene como atributos daydate, value1 y value2

@Query("SELECT cast(creationDate as date) as daydate , SUM(paymentValue) as value1, fxRate as value2 FROM payment " + 
            "group by cast(creationDate as date)")
    List<GraphDto> findPaymentValuePerDay ();

pero obtengo el mismo error.

 [Ljava.lang.Object; cannot be cast to ...entity.GraphDto.

so, ¿cómo puedo trabajar con alias en JPQL? Solo necesito una función que devuelva el nombre de 3 columnas diferentes con valores tomados de una entidad existente utilizando la consulta H2 correcta. Gracias a todo

Respuestas a la pregunta(1)

Su respuesta a la pregunta