Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


Envio de float de JSP a VO

Forte For Java, JavaBeens, JBuilder, JDK compiladores, Applets, Proyectos Web, interactividad con JDBC... entre mucho mas.
Moderador

Moderador: iuav

Envio de float de JSP a VO

Notapor jhonkent el Mié Mar 05, 2008 7:42 pm

Hola, necesito ayuda en algo simple pero q no logro entender porq lo hace..

El proyecto lo trabajo sobre spring, webwork y la BD en Mysql.
Tengo un action donde creo en un Map una lista de costos (id ENTERO, costo FLOTANTE).
la genera correctamente y la envio a un <select <option mediante un iterator para desplegar las opciones.

Hasta aqui todo va bien (despliega las opciones correctamente)

El problema es que al seleccionar el costo deceado del <select, el valor que me envia al VO me agrega un 0.0 al final del float, es decir,


Tengo las opciones:
91.15
91
333.19

Si yo selecciono la opcion 19.15, al darle submit envio toda la informacion al VO, peeeero en el setter de mi VO "user" recibe el numero 1915.0, en caso de 91 obtengo 910.0.

AUXILIOOO !!

Les dejo parte de mi codigo.


------ Mi Action (DE ESTE SEGURO QUE ESTA BIEN) ---

ArrayList<CostLotusNVO> lotusCat = new ArrayList<CostLotusNVO>();
session.put("_COSTLOTUS_CAT",mgr.costLotusCatalogue(costLotusVO, lotusCat));


------ MI VO: -----

//lotusNotes
private String lotusDescrip;
private Float lotusCost;

public Float getLotusCost() {
return lotusCost;
}

public void setLotusCost(Float lotusCost) {
this.lotusCost = lotusCost;
}


---- MI JSP -----

<table>
LotusNotes Cost:
<select onChange="ParseFloat()" id="lotusCost" name="user.lotusCost"> // el ParseFloat solo es para comprobar que HASTA AQUI el valor es un float, cosa que es correcto
<option>
<ww:property value="user.lotusCost" default="-----Select LotusNotes -----"/>
</option>

<ww:iterator value="%{#session._COSTLOTUS_CAT}">
<option value=<ww:property value="cost"/>>
<ww:property value="cost"/>
</option>
</ww:iterator>
</select>
<ww:textfield label="%{getText('user.lotusDescrip')}" name="user.lotusDescrip" id="user.lotusDescrip" value="%{user.lotusDescrip}"/>

</td>



(anexo el modulo del ParseFloat())

<script type="text/javascript">

function ParseFloat(){
var lotusCost = parseFloat(document.forms['editUser'].elements['lotusCost'].value);
var sameCost = parseFloat(document.forms['editUser'].elements['sameCost'].value);

if(!isNaN(lotusCost)){alert("es numero "+lotusCost);}

if(!isNaN(sameCost)){alert("es numero "+sameCost);}

}

- Al generar el Map (session) esta correcto
- Al desplegar las en el <select esta correcto
- Al seleccionar una opcion en el <select es correcto
- Al recibir el float en el VO user XXXXX INCORRECTO !



De antemano GRACIAS !!
jhonkent
Novato
Novato
 
Mensajes: 1
Registrado: Mié Mar 05, 2008 7:35 pm

Volver a Java

¿Quién está conectado?

Usuarios navegando por este Foro: Yahoo [Bot] y 0 invitados