Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/04/2015, 09:30
nevergame
 
Fecha de Ingreso: julio-2006
Ubicación: sevilla
Mensajes: 251
Antigüedad: 18 años, 3 meses
Puntos: 5
Struts2 y variable double comportamiento anomalo

Hola a todos tengo un form en struts2 que pasa dos campos con decimales

Código Java:
Ver original
  1. <s:form action="CrearEvento" method="post" validate="true">    
  2.             <s:textfield  name="espectaculo" label="Nombre"></s:textfield>
  3.             <s:textfield  name="fecha" label="Fecha" ></s:textfield>
  4.             <s:textfield  name="precioAnticipado" label="Precio Anticipado"></s:textfield>
  5.             <s:textfield  name="precioTaquilla" label="Precio Taquilla"></s:textfield>
  6.             <s:submit name="Crear" value="Crear"></s:submit>
  7.         </s:form>

Pero al ingresarlo en la clase action y llevarlo por el dao a la bd mysql me mueve el separador decimal, al alza es como si pensara que es un punto de miles o algo asi.

Código Java:
Ver original
  1. String espectaculo;
  2.     String fecha;
  3.     Float precioAnticipado;
  4.     Float precioTaquilla;

En fin, pienso que java esta usando el locale en español por lo que considera el separador decimal la coma, porque mediante validacion struts2 obligo a introducir la coma decimal, y valida y los introduce bien al editar me los devuelve con el punto.

Código Java:
Ver original
  1. <field name="precioTaquilla">
  2.         <field-validator type="required">
  3.             <message>Debe insertar un precio anticipado.</message>
  4.         </field-validator>
  5.        
  6.         <field-validator type="regex">
  7.             <param name="regex"><![CDATA[(^[\+\-]{0,1}[0-9]+[\,]{1}[0-9]+$)]]></param>
  8.             <message>Solo numeros permitidos. Ejemplo: 10,0 </message>
  9.         </field-validator>
  10.     </field>

Como puedo resolver el problema, realmente me desconcierta.