Formula no JasperReports

possuo uma variavel chamada total:
$F{QTDE}*$F{PRECO}

quando compilo o relatório, aparece o seguinte erro:
operator * cannot be applied to java.lang.Integer,java.lang.Double
value = (java.lang.Double)(((java.lang.Integer)field_QTDE.getValue())*((java.lang.Double)field_PRECO.getValue()));

como resolver

oops, ao invés de criar na formula, criei no comando Select sum(qtde*preco) as total, resolvido

obrigado

De qualquer maneira, entenda a razão da exceção anterior: não há tipos primitivos no Jasper. Os parâmetros, variaveis e campos são objetos.
Portanto, para resolver este problema específico, seria necessário fazer:

$F{QTDE}.doubleValue() * $F{PRECO}.doubleValue()

Fique atento a isto, pois é natural enfrentar esta dificuldade.
Outro exemplo seria colocar uma expressão arbitraria no campo “print when” de um campo qualquer. Se colocasse isto

$P{param1} == $P{param2}

receberia o mesmo erro. O correto seria:

Boolean.valueOf( $P{param1} == $P{param2} )