Problema com alteraçao da minha tabela de itens de produto da tabela compra

2 respostas
anapaulasys

Olá Pessoal, Sou iniciante.

Estou com problema na minha tela de compra.
Quando eu peço para alterar, ele solta o seguinte erro.

java.lang.NumberFormatException: For input string: "0,88"

at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)

at java.lang.Float.parseFloat(Float.java:422)

at Movimentacao.TelaCompra.setPersistenciaItens(TelaCompra.java:715)

at Movimentacao.TelaCompra.incluirDados(TelaCompra.java:248)

at Movimentacao.TelaCompra.actionPerformed(TelaCompra.java:382)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)

at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)

at java.awt.Component.processMouseEvent(Component.java:6263)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)

at java.awt.Component.processEvent(Component.java:6028)

at java.awt.Container.processEvent(Container.java:2041)

at java.awt.Component.dispatchEventImpl(Component.java:4630)

at java.awt.Container.dispatchEventImpl(Container.java:2099)

at java.awt.Component.dispatchEvent(Component.java:4460)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)

at java.awt.Container.dispatchEventImpl(Container.java:2085)

at java.awt.Window.dispatchEventImpl(Window.java:2478)

at java.awt.Component.dispatchEvent(Component.java:4460)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

CONSTRUÍDO COM SUCESSO (tempo total: 26 segundos)
public void setPersistenciaItens() {

ItemPedidoCompra itemPedidoCompra;

for (int i = 0; i < jtTabela.getTabela().getRowCount(); i++) {

itemPedidoCompra = new ItemPedidoCompra();

itemPedidoCompra.setCod_itemcompra(Integer.parseInt((String) jtTabela.getTabela().getValueAt(i, 5)));

itemPedidoCompra.setCod_prod(Integer.parseInt((String) jtTabela.getTabela().getValueAt(i, 0)));

itemPedidoCompra.setCod_compra(Integer.parseInt(cod_compra.getText()));

itemPedidoCompra.setQtd_item(Integer.parseInt((String) jtTabela.getTabela().getValueAt(i, 2)));

itemPedidoCompra.setValor_unit(Double.parseDouble((String) jtTabela.getTabela().getValueAt(i, 3)));

itemPedidoCompra.setValor_total(Double.parseDouble((String) jtTabela.getTabela().getValueAt(i, 4)));

itensPedidoCompra.add(itemPedidoCompra);

}

}
<a class="mention" href="/u/override">@Override</a>

public void incluirDados() {

try {

setPersistencia();

JOptionPane.showMessageDialog(null, "passei aqui 1");

if (statusTela == INCLUINDO) {

JOptionPane.showMessageDialog(null, "incluindo compra");

Banco.executaSql(pedidoCompra.getInsertSql());

} else if(statusTela == ALTERANDO) {

JOptionPane.showMessageDialog(null, "atualizando compra");

Banco.executaSql(pedidoCompra.getUpdateSql());

} else{

Banco.executaSql(pedidoCompra.getDeleteSql());

}

setPersistenciaItens();

Object[] vetor;

int indice = 0;

for (int i = 0; i < itensPedidoCompra.size(); i++) {

indice = procuraVetor("" + itensPedidoCompra.get(i).getCod_itemcompra());

if (indice >= 0) { //localizou

vetor = (Object[]) itensCompraBD.get(indice);

vetor[1] = 1; //indica que foi processado

itensCompraBD.set(indice, vetor);
JOptionPane.showMessageDialog(null, "alterando itens");
                Banco.executaSql(itensPedidoCompra.get(i).getUpdateSql());
            } else if(indice &lt;1){
              JOptionPane.showMessageDialog(null, "inserindo itens");
             itensPedidoCompra.get(i).setCod_compra(Integer.parseInt(cod_compra.getText()));
              Banco.executaSql(itensPedidoCompra.get(i).getInsertSql());
           }
        }
        int status = 0;
        ItemPedidoCompra itemPedidoCompra = new ItemPedidoCompra();
        for (int i = 0; i &lt; itensCompraBD.size(); i++) {
            vetor = (Object[]) itensCompraBD.get(i);
            status = (Integer) vetor[1];
            if (status == 0) {
                 JOptionPane.showMessageDialog(null, "deletando itens");
                itemPedidoCompra.setCod_itemcompra(Integer.parseInt((String) vetor[0]));
                Banco.executaSql(itemPedidoCompra.getDeleteSql());
            }
        }
    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, "Não foi possivel Incluir os Dados");
        e.printStackTrace();
    }
}

Pessoal preciso de ajuda, se alguém souber qual linha está com problema,
Agradeço … atenção.

2 Respostas

I

Olá anapaulasys, quando for postar um código, lembra de usar a tag ‘Code’ para que possamos visualizar, porque assim fica muito difícil de ver e se possível também põe qual a tua estrutura de banco para entender melhor, ok.

f4binho

Quando for fazer um parse de String é melhor usar o valueOf().

Float.valueOf("/* Aqui jáz a sua String \o/ */");

Eu enfrento custumeiramente um problema com o parseFloat, mas com o valueOf() nunca enfrentei isso

Espero que iso resolva o seu problema 8)

Criado 11 de junho de 2010
Ultima resposta 12 de jun. de 2010
Respostas 2
Participantes 3