style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

dato tabla

Hola estoy realizando una tabla que la saca los datos de la bd

y esto me da muchos decimales y solo quiero que me muestre 2.

¿alguna idea?.Espero que me podais ayudar.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Format

yo uso String valor = String.format("%2.2f", valor a convertir).replace(',','.') para 2 decimales

Imagen de ezamudio

replace?

Y para qué es el replace de comas con puntos? si te sale coma como separador decimal, lo que necesitas es configurar bien el Locale de la JVM, no estar reemplazando comas por puntos en el formatter.

He puesto esto tanto con

He puesto esto tanto con replace como sin él y da error en la expresion

<h:outputText value="String.format("%2.2f",#{ofertas.producto.precioBase * (1-ofertas.oferta.porcentaje)}) €"/>

¿alguna idea?

Saludos.

f:convertNumber

En JSF, utiliza la etiqueta f:convertNumber. En caso de que requieras euros (€).

locale="es-ES"

Es decir:

<h:outputText value="#{ofertas.producto.precioBase * (1 - ofertas.oferta.porcentaje)}">
    <f:convertNumber type="currency" locale="es-ES" />
</h:outputText>

es solo una idea. yo lo uso

es solo una idea. yo lo uso así con otro fin. ;)

Hola he pusto esto y no me

Hola he pusto esto y no me reconoce el euro , y me muestra muchos digitos el precio 9.87777777777777
y solo se debe mostrar 2

 <h:outputText value="#{ofertas.producto.precioBase * (1-ofertas.oferta.porcentaje)} " style="color:red; font-size:18px;" >
                            <f:convertNumber type="currency" currencySymbol="€" pattern="#,##€" maxFractionDigits="2"/>
                        </h:outputText>

Espero que me podais ayudar a resolver esto. gracias por lo de antes.

Ejemplo simple de JSF

 

Debería funcionar. ¿Qué servidor de aplicaciones estás usando (Tomcat, Weblogic, etc)? ¿Qué versión y actualización del JDK (“1.8.0_45”)? ¿Qué versión de JSF (2.1, 2.2, etc.)? ¿Estás utilizando alguna implementación de JSF (PrimeFaces, RichFaces, etc.)?

Este es el ejemplo más simple:

JSF:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
     xmlns:h="http://java.sun.com/jsf/html"
     xmlns:f="http://java.sun.com/jsf/core"
     xmlns:c="http://java.sun.com/jsp/jstl/core">
    <h:head>
    </h:head>
    <h:body>
        <c:set var="price" value="${9.87777777777777}"/>
        <h:outputText value="#{price}">
            <f:convertNumber type="currency" locale="es-ES"/>
        </h:outputText>
    </h:body>
</html>

Salida:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>9,88 €</body>
</html>

NOTA: El ejemplo anterior fue probado en JBoss AS 7.1.1.Final “Brontes” y Java 1.7.0_80. No se incluyó ninguna librería.

~~~

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">