URGENTE - Função no oracle

Olá Amigos, estou com problemas na chamada de função do oracle quando executo ela no meio de um SELECT.
O SELECT funciona no sqlplus mas qdo tento pelo JDBC o campo de retorno da FUNCTION que eh o DESCONTO é nulo sempre, mas os outros campos voltam normalmente. ALguem poderia dar uma luz???
Obrigado


 String sql = "SELECT DE_PROMO1,USR_ONLINE.MONTAPOP2('160008','') AS DESCONTO, ATE_PROMO1,SITUACAO,PR_PROMO1,ATE_NORM1,PRECO1 FROM USR_ONLINE.PRD WHERE PROD_ID='160008'";
			
			PreparedStatement stmt = con.prepareStatement(sql) ;
			result = (OracleResultSet) stmt.executeQuery();
			result.next();
			 charTemp =  result.getCHAR("DESCONTO");
		
			 if (charTemp == null){
			 	System.out.println("nulo");
			 }else{
			 	System.out.println("nao nulo");
			 	System.out.println(charTemp.toString());
			 }

Já tentou isso?

charTemp = result.getString(“DESCONTO”);

essa foi a primeira tentativa, ai como achei q poderia ser alguma coisa com o type fiz pelo get char.

O estranho eh o seguinte, quando eu chamo essa e eoutra FUNCTION pelo console do oracle ele funciona mas qdo chamo pelo JDBC nao funciona , mesmo que eu nao traga retorno algum, ou seja, ela nao executa quando a chamada eh pelo JDBC. Estou desesperado com essa situação , se alguem puder ajudar por favor dê uma luz. Obrigado