Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/11/2013, 01:58
marcusaurelio
 
Fecha de Ingreso: enero-2007
Mensajes: 285
Antigüedad: 17 años, 3 meses
Puntos: 21
APPLET enviar datos a php

Señores buenas noches.. pasoa explicar.. tengo un peque applet que hice.. y lo que hace es..

leer un excell, enviar sus campos a php, recursivamente y fila por fila..

hasta aca barbaro.. pero el problema esta en que me tira abajo el servidor apache..

imagino que es por que lo atoro con los datos.

de todas formas.. en el java tomo la respuesta ok de php para seguir pero por alguna razon java no espera esta respuesta y mete todo junto..

desde ya muchas gracias .... y pego el codigo.. para que me puedan dar una mano..

solo pongo los dos metodos mas importantes por que no me entran en el post. si alguien quiere verlo compelto.. lo subo a


http://www.tecnifer.com.ar/upxlssintabla.rar

Código:
public synchronized void filechooser(final String archivo) {

        botonProceso.setEnabled(false);
        varInicioFilas = Integer.parseInt(saltarInicio.getText());
        varCaracteresCode = Integer.parseInt(caracteresCode.getText());
        varOmitirPalabras = palabrasOmitir.getText();


        Runnable miRunnable = new Runnable() {
            public void run() {

                try {
                    /*inicia rubale*/

                    try {
                        botonDetener.setEnabled(true);



                        int rowGral = 0;
                        Workbook archivoExcel = Workbook.getWorkbook(new File(archivo));
                        //salida+="Número de Hojas\t"+archivoExcel.getNumberOfSheets()+"\n";
                        int filasdecadahoja = 0;
                        int nhoja = archivoExcel.getNumberOfSheets();
                        for (int sheetNo = 0; sheetNo < archivoExcel.getNumberOfSheets(); sheetNo++) {
                            Sheet hojax = archivoExcel.getSheet(sheetNo);
                            filasdecadahoja += hojax.getRows();

                        }

                        total.setText("" + filasdecadahoja);

                        for (int sheetNo = 0; sheetNo < archivoExcel.getNumberOfSheets(); sheetNo++) // Recorre 
                        // cada    
                        // hoja                                                                                                                                                       
                        {

                            hoval.setText("" + nhoja);
                            int rowHoja = 0;

                            Sheet hoja = archivoExcel.getSheet(sheetNo);
                            int numColumnas = hoja.getColumns();
                            int numFilas = hoja.getRows();



                            for (int fila = 0; fila < numFilas; fila++) {
                                
                                //mensajesSalida(""+fila);


                                if (!procesoActivo) {
                                    iniciar();
                                    jProgressBar1.setValue(0);

                                    procesoActivo = true;
                                    botonDetener.setEnabled(false);
                                    Thread.currentThread().stop();

                                }

                                rowHoja++;
                                rowGral++;
                                filahoja.setText("" + rowHoja);
                                filatotal.setText("" + rowGral);

                                int resto = filasdecadahoja - rowGral;
                                restan.setText("" + resto);

                                int porc = (rowGral * 100) / filasdecadahoja;



                               

                                primerCampo = hoja.getCell(0, fila).getContents();

                                Integer largo = primerCampo.length();
                                //mensajesSalida(Integer.toString(largo)+" - "+varCaracteresCode);
                                if (rowHoja > varInicioFilas) {
                                    
                                     String sale = null;
                                     
                                
                                    if (largo >= varCaracteresCode) {
                                        
                                       
                                     
                               
                                        
                                        if (varOmitirPalabras != "") {

                                            String[] arra = varOmitirPalabras.split(",");

                                            if (!in_array(primerCampo, arra)) {
                                                sale = parametizar(hoja, fila, paramVaciar);
                                                pasarBD(sale);
                                                paramVaciar = "0";

                                            }


                                        } else {
                                            sale = parametizar(hoja, fila, paramVaciar);
                                            pasarBD(sale);
                                            paramVaciar = "0";
                                        }
                                        
                                    }
                                }

                                //int entero= Integer.parseInt(reto);



                                //mensajesSalida(paramVaciar);

                                //paramVaciar="0";

                                if (porc == 100) {
                                    String mensajex;
                                    mensajex = "******************************************** \r\n"
                                            + "PROCESO COMPLETADO\r\n"
                                            + "********************************************";
                                    mensajesSalida(mensajex);

                                    campoArchivo.setText("");
                                    botonProceso.setEnabled(true);
                                    paramVaciar = iniciarVaciar;
                                    botonDetener.setEnabled(false);
                                }
                                jProgressBar1.setValue(porc);



                            }






                        }
                        // this.gereraTxt(data);

                    } catch (Exception ioe) {
                        //ioe.printStackTrace();
                        //ioe.toString()
                        iniciar();
                        botonProceso.setEnabled(true);
                        mensajesSalida("Error con el archivo: " + ioe.getMessage());
                        botonDetener.setEnabled(false);
                    }


                    /*finaliza runable*/
                } catch (Exception e) {
                    e.printStackTrace();
                    mensajesSalida("Error con el archivo: " + e.getMessage());
                    botonDetener.setEnabled(false);
                }
            }
        };

        Thread hilo = new Thread(miRunnable);
        hilo.start();


    }


public void pasarBD(String sale) throws InterruptedException {

        String reto;
        int salimero = 1;
        int ReintentosNum = 10;
        try {
            reto = requestFromDB(sale);

            String expose;
            if (!reto.equals("1")) {

                if (Intentos < ReintentosNum) {
                    mensajesSalida("Error de conexión, el servidor no da respuesta: reintento " + (Intentos + 1) + " de " + ReintentosNum);
                    Intentos++;
                    Thread.currentThread().sleep(3000);
                    pasarBD(sale);


                } else {
                    String mensajex;
                    mensajex = "******************************************** \r\n"
                            + "ERROR EN EL PROCESO\r\nEL SERVIDOR NO DIO RESPUESTA\r\n"
                            + "********************************************";
                    mensajesSalida(mensajex);
                    botonProceso.setEnabled(true);

                    botonDetener.setEnabled(false);
                    Intentos = 0;
                    Thread.currentThread().stop();

                }




            } else {
                //mensajesSalida("OK");
                Intentos = 0;
            }



        } catch (Exception ex) {
            Logger.getLogger(filechooser.class.getName()).log(Level.SEVERE, null, ex);
        }



    }

Última edición por marcusaurelio; 04/11/2013 a las 02:06