Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Toryas

#1
Resolvi el problema utilizando una libreria llamada omnifaces
#2
Java / Ayuda con JSF + PrimeFaces + Hibernate
27 Abril 2015, 22:31 PM
Hola hace mucho que no necesitaba de su ayuda, ahora en un proyecto que estoy tratando de empezar me han surgido algunos problemas, y quisiera pedirles una pequeña ayuda.

Estoy trabajando con JSF + PrimerFaces e Hibernate.

Estos son las clases con las que tengo problemas:

MateriaPrima.java

package com.x.model.pojo;
// Generated 22-04-2015 13:37:05 by Hibernate Tools 4.3.1


import java.util.Date;
import java.util.HashSet;
import java.util.Set;


public class MateriaPrima  implements java.io.Serializable {


     private Integer id;
     private Productor productor;
     private int lote;
     private Date fechaIngreso;
     private int tipoDocumento;
     private int numeroDocumento;
     private String estado;
     private Set detalleMateriaPrimas = new HashSet(0);

    public MateriaPrima() {
    }


    public MateriaPrima(Productor productor, int lote, Date fechaIngreso, int tipoDocumento, int numeroDocumento) {
        this.productor = productor;
        this.lote = lote;
        this.fechaIngreso = fechaIngreso;
        this.tipoDocumento = tipoDocumento;
        this.numeroDocumento = numeroDocumento;
    }
    public MateriaPrima(Productor productor, int lote, Date fechaIngreso, int tipoDocumento, int numeroDocumento, Set detalleMateriaPrimas) {
       this.productor = productor;
       this.lote = lote;
       this.fechaIngreso = fechaIngreso;
       this.tipoDocumento = tipoDocumento;
       this.numeroDocumento = numeroDocumento;
       this.detalleMateriaPrimas = detalleMateriaPrimas;
    }
   
    public Integer getId() {
        return this.id;
    }
   
    public void setId(Integer id) {
        this.id = id;
    }
    public Productor getProductor() {
        return this.productor;
    }
   
    public void setProductor(Productor productor) {
        this.productor = productor;
    }
    public int getLote() {
        return this.lote;
    }
   
    public void setLote(int lote) {
        this.lote = lote;
    }
    public Date getFechaIngreso() {
        return this.fechaIngreso;
    }
   
    public void setFechaIngreso(Date fechaIngreso) {
        this.fechaIngreso = fechaIngreso;
    }
    public int getTipoDocumento() {
        return this.tipoDocumento;
    }
   
    public void setTipoDocumento(int tipoDocumento) {
        this.tipoDocumento = tipoDocumento;
    }
    public int getNumeroDocumento() {
        return this.numeroDocumento;
    }
   
    public void setNumeroDocumento(int numeroDocumento) {
        this.numeroDocumento = numeroDocumento;
    }
    public Set getDetalleMateriaPrimas() {
        return this.detalleMateriaPrimas;
    }
   
    public void setDetalleMateriaPrimas(Set detalleMateriaPrimas) {
        this.detalleMateriaPrimas = detalleMateriaPrimas;
    }

    public String getEstado() {
        return estado;
    }

    public void setEstado(String estado) {
        this.estado = estado;
    }

}


Productor.java

package com.x.model.pojo;
// Generated 22-04-2015 13:37:05 by Hibernate Tools 4.3.1


import java.util.HashSet;
import java.util.Set;


public class Productor  implements java.io.Serializable {


     private Integer id;
     private String nombre;
     private String rut;
     private Set materiaPrimas = new HashSet(0);

    public Productor() {
    }


    public Productor(String nombre, String rut) {
        this.nombre = nombre;
        this.rut = rut;
    }
    public Productor(String nombre, String rut, Set materiaPrimas) {
       this.nombre = nombre;
       this.rut = rut;
       this.materiaPrimas = materiaPrimas;
    }
   
    public Integer getId() {
        return this.id;
    }
   
    public void setId(Integer id) {
        this.id = id;
    }
    public String getNombre() {
        return this.nombre;
    }
   
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    public String getRut() {
        return this.rut;
    }
   
    public void setRut(String rut) {
        this.rut = rut;
    }
    public Set getMateriaPrimas() {
        return this.materiaPrimas;
    }
   
    public void setMateriaPrimas(Set materiaPrimas) {
        this.materiaPrimas = materiaPrimas;
    }


}


MateriaPrimaBean.java


package com.x.bean;

import com.x.model.dao.MateriaPrimaDAO;
import com.x.model.dao.ProductorDAO;
import com.x.model.dao.VariedadDAO;
import com.x.model.pojo.MateriaPrima;
import com.x.model.pojo.Productor;
import com.x.model.pojo.Variedad;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;


@ManagedBean
@ViewScoped
public class MateriaPrimaBean {

    private MateriaPrima materiaPrima = new MateriaPrima();
    private Productor productor = new Productor();
    private List<Productor> listaProductor;
    private List<Variedad> listaVariedad;
    private List<MateriaPrima> listaMateriaPrima;
    private String accion;

    public void listaVariedades() {
        VariedadDAO vDAO;
        try {
            vDAO = new VariedadDAO();
            listaVariedad = vDAO.lista();
        } catch (Exception e) {

        }
    }

    public void leerID(MateriaPrima p) {
        MateriaPrimaDAO mDAO;
        MateriaPrima temp;
        try {
            mDAO = new MateriaPrimaDAO();
            temp = mDAO.findByID(p.getId());
            if (temp != null) {
                materiaPrima = temp;
            }
        } catch (Exception e) {

        }
    }

    public void eliminarMateriaPrima(MateriaPrima p) {
        MateriaPrimaDAO mDAO;
        try {
            mDAO = new MateriaPrimaDAO();
            mDAO.delete(p);
            this.listaMateriasPrimas();
        } catch (Exception e) {

        }
    }

    public void operar() {
        switch (accion) {
            case "Agregar":
                materiaPrima.setFechaIngreso(new Date());
                materiaPrima.setNumeroDocumento(11);
                intertaMateriaPrima();
                limpiarDialog();
                break;

            case "Modificar":
                modificarMateriaPrima();
                limpiarDialog();
                break;
        }
    }

    public void listaProductores() {
        ProductorDAO pDAO;
        try {
            pDAO = new ProductorDAO();
            listaProductor = pDAO.listaProductores();
        } catch (Exception e) {

        }
    }

    public void intertaMateriaPrima() {
        MateriaPrimaDAO mDAO;
        try {
            mDAO = new MateriaPrimaDAO();
            mDAO.IngresaMateriaPrima(materiaPrima);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void listaMateriasPrimas() {
        MateriaPrimaDAO mDAO;
        try {
            mDAO = new MateriaPrimaDAO();
            listaMateriaPrima = mDAO.listaMateriasPrimas();
        } catch (Exception e) {

        }
    }
   
    public void dummyMateriasPrima(){
        List<MateriaPrima> mm = new ArrayList();
        MateriaPrima a = new MateriaPrima();
        a.setFechaIngreso(new Date());
        a.setLote(2213);
        a.setProductor(new Productor("Acme","2"));
        a.setEstado("Fumigación");
        MateriaPrima b = new MateriaPrima();
        b.setFechaIngreso(new Date());
        b.setLote(2214);
        b.setEstado("Recepcion");
        b.setProductor(new Productor("NerNut","1"));
        mm.add(b);
        mm.add(a);
       
        listaMateriaPrima = mm;
       
       
    }

    public MateriaPrima getMateriaPrima() {
        return materiaPrima;
    }

    public void setMateriaPrima(MateriaPrima materiaPrima) {
        this.materiaPrima = materiaPrima;
    }

    public List<MateriaPrima> getListaMateriaPrima() {
        return listaMateriaPrima;
    }

    public void setListaMateriaPrima(List<MateriaPrima> listaMateriaPrima) {
        this.listaMateriaPrima = listaMateriaPrima;
    }

    public String getAccion() {
        return accion;
    }

    public void setAccion(String accion) {
        this.listaProductores();
        this.accion = accion;
    }

    public Productor getProductor() {
        return productor;
    }

    public void setProductor(Productor productor) {
        this.productor = productor;
    }

    public List<Productor> getListaProductor() {
        return listaProductor;
    }

    public void setListaProductor(List<Productor> listaProductor) {
        this.listaProductor = listaProductor;
    }

    public List<Variedad> getListaVariedad() {
        return listaVariedad;
    }

    public void setListaVariedad(List<Variedad> listaVariedad) {
        this.listaVariedad = listaVariedad;
    }

    private void limpiarDialog() {
        materiaPrima = new MateriaPrima();
    }

    private void modificarMateriaPrima() {
        //Rellenar
    }

}




matntenedor.xhtml


<?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:ui="http://xmlns.jcp.org/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:f="http://xmlns.jcp.org/jsf/core"
      xmlns:c="http://xmlns.jcp.org/jsp/jstl/core">

    <body>

        <ui:composition template="./../WEB-INF/template/main.xhtml">

            <ui:define name="content">
                <f:event type="preRenderView" listener="#{materiaPrimaBean.dummyMateriasPrima()}" />
                <p:growl id="mjg" autoUpdate="true" />
                <h:form id="mainForm">
                    <p:commandButton value="Agregar Materia Prima"   oncomplete="PF('wdg').show();"  actionListener="#{materiaPrimaBean.setAccion('Agregar')}" update=":dialog"/>
                    <p:commandButton value="Listar" actionListener="#{materiaPrimaBean.listaMateriasPrimas()}" update="table"/>

                    <p:dataTable id="table" value="#{materiaPrimaBean.listaMateriaPrima}" var="materiaPrima">
                        <p:column headerText="Fecha Ingreso" >
                            <p:outputLabel value="#{materiaPrima.fechaIngreso}"/>
                        </p:column>
                        <p:column headerText="Lote" >
                            <p:outputLabel value="#{materiaPrima.lote}"/>
                        </p:column>
                        <p:column headerText="Productor" >
                            <p:outputLabel value="#{materiaPrima.productor.nombre}"/>
                        </p:column>
                        <p:column headerText="Estado" >
                            <p:outputLabel value="#{materiaPrima.estado}"/>
                        </p:column>
                        <p:column headerText="Acciones" >
                            <p:commandLink value="Modificar" actionListener="#{materiaPrimaBean.leerID(variedad)}" oncomplete="PF('wdg').show();" update=":dialog" />
                            <h:outputText value="&#160;" />
                            <p:commandLink value="Elminar" actionListener="#{materiaPrimaBean.eliminarMateriaPrima(materiaPrima)}" update="table" />
                            <h:outputText value="&#160;" />
                            <p:commandLink value="Imprimir Tarjas"  oncomplete="PF('wdgTarjas').show();"/>
                        </p:column>
                    </p:dataTable>
                </h:form>
                <p:dialog header="Materia Prima" widgetVar="wdg" id="dialog">
                    <h:form>
                        <p:panelGrid>
                            <p:row>
                                <p:column>
                                    <p:outputLabel  value="Lote" />
                                    <p:inputText  value="#{materiaPrimaBean.materiaPrima.lote}"  />
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column>
                                    <p:outputLabel  value="Tipo Documento" />
                                    <p:inputText  value="#{materiaPrimaBean.materiaPrima.tipoDocumento}" />
                                </p:column>
                                <p:column>
                                    <p:outputLabel  value="N° Documento" />
                                    <p:inputText  value="#{materiaPrimaBean.materiaPrima.tipoDocumento}" />
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column>
                                    <p:outputLabel  value="Productor" />
                                    <p:selectOneMenu value="#{materiaPrimaBean.materiaPrima.productor}">
                                        <f:selectItem itemValue="" itemLabel="Seleccione Productor" />
                                        <f:selectItems value="#{materiaPrimaBean.listaProductor}"  var="productor" itemValue="#{productor}" itemLabel="#{productor.nombre}" />
                                    </p:selectOneMenu>
                                </p:column>
                            </p:row>
                            <p:row>
                                <p:column>
                                    <p:outputLabel  value="Especie" />
                                    <p:inputText value="#{materiaPrimaBean.materiaPrima.lote}" />
                                </p:column>
                                <p:column>
                                    <p:outputLabel  value="Variedad" />
                                    <p:inputText value="#{materiaPrimaBean.materiaPrima.lote}" />
                                </p:column>
                            </p:row>
                        </p:panelGrid>
                        <p:accordionPanel activeIndex="-1">
                            <p:tab title="Detalle" >
                                <p:panelGrid>
                                    <f:facet name="header">
                                        <p:row>
                                            <p:column colspan="12">Tarjas del Lote</p:column>
                                        </p:row>
                                        <p:row>
                                            <p:column colspan="2">N° Tarja</p:column>
                                            <p:column colspan="2">Productor</p:column>
                                            <p:column colspan="2">Tipo Evnase</p:column>
                                            <p:column colspan="2">Cantidad Evnases</p:column>
                                            <p:column colspan="2">Calibre</p:column>
                                            <p:column colspan="2">Kilos</p:column>
                                        </p:row>
                                    </f:facet>
                                    <p:row>
                                        <p:column colspan="2">101</p:column>
                                        <p:column colspan="2">Acme</p:column>
                                        <p:column colspan="2">Saco 20Kg</p:column>
                                        <p:column colspan="2">20</p:column>
                                        <p:column colspan="2">32</p:column>
                                        <p:column colspan="2">400</p:column>
                                    </p:row>
                                    <p:row>
                                        <p:column colspan="2">102</p:column>
                                        <p:column colspan="2">Acme</p:column>
                                        <p:column colspan="2">Saco 20Kg</p:column>
                                        <p:column colspan="2">20</p:column>
                                        <p:column colspan="2">32</p:column>
                                        <p:column colspan="2">400</p:column>
                                    </p:row>
                                    <p:row>
                                        <p:column colspan="2">104</p:column>
                                        <p:column colspan="2">Acme</p:column>
                                        <p:column colspan="2">Saco 20Kg</p:column>
                                        <p:column colspan="2">20</p:column>
                                        <p:column colspan="2">32</p:column>
                                        <p:column colspan="2">400</p:column>
                                    </p:row>
                                    <p:row>
                                        <p:column colspan="2">105</p:column>
                                        <p:column colspan="2">Acme</p:column>
                                        <p:column colspan="2">Saco 20Kg</p:column>
                                        <p:column colspan="2">20</p:column>
                                        <p:column colspan="2">32</p:column>
                                        <p:column colspan="2">400</p:column>
                                    </p:row>
                                    <p:row>
                                        <p:column colspan="2">
                                            <p:button value="Agregar Fila"/>
                                        </p:column>
                                    </p:row>
                                </p:panelGrid>
                            </p:tab>
                        </p:accordionPanel>
                        <p:commandButton value="#{materiaPrimaBean.accion}" actionListener="#{materiaPrimaBean.operar()}" oncomplete="PF('wdg').hide();" update=":mainForm:table"/>
                        <p:commandButton value="Cancelar" immediate="true"  oncomplete="PF('wdg').hide();"/>
                    </h:form>
                </p:dialog>

                <p:dialog header="Detalle de Materia Prima" widgetVar="wdgTarjas" id="dialogTarjas">
                    <p:panelGrid>
                        <f:facet name="header">
                            <p:row>
                                <p:column colspan="12">Tarjas del Lote</p:column>
                            </p:row>
                            <p:row>
                                <p:column colspan="2">N° Tarja</p:column>
                                <p:column colspan="2">Productor</p:column>
                                <p:column colspan="2">Tipo Evnase</p:column>
                                <p:column colspan="2">Cantidad Evnases</p:column>
                                <p:column colspan="2">Calibre</p:column>
                                <p:column colspan="2">Kilos</p:column>
                            </p:row>
                        </f:facet>
                        <p:row>
                            <p:column colspan="2">101</p:column>
                            <p:column colspan="2">Acme</p:column>
                            <p:column colspan="2">Saco 20Kg</p:column>
                            <p:column colspan="2">20</p:column>
                            <p:column colspan="2">32</p:column>
                            <p:column colspan="2">400</p:column>
                        </p:row>
                        <p:row>
                            <p:column colspan="2">102</p:column>
                            <p:column colspan="2">Acme</p:column>
                            <p:column colspan="2">Saco 20Kg</p:column>
                            <p:column colspan="2">20</p:column>
                            <p:column colspan="2">32</p:column>
                            <p:column colspan="2">400</p:column>
                        </p:row>
                        <p:row>
                            <p:column colspan="2">104</p:column>
                            <p:column colspan="2">Acme</p:column>
                            <p:column colspan="2">Saco 20Kg</p:column>
                            <p:column colspan="2">20</p:column>
                            <p:column colspan="2">32</p:column>
                            <p:column colspan="2">400</p:column>
                        </p:row>
                        <p:row>
                            <p:column colspan="2">105</p:column>
                            <p:column colspan="2">Acme</p:column>
                            <p:column colspan="2">Saco 20Kg</p:column>
                            <p:column colspan="2">20</p:column>
                            <p:column colspan="2">32</p:column>
                            <p:column colspan="2">400</p:column>
                        </p:row>
                        <p:row>
                            <p:column colspan="2">
                                <p:button value="Imprimir"/>
                            </p:column>
                            <p:column colspan="2">
                                <p:button value="Cancelar"/>
                            </p:column>
                        </p:row>
                    </p:panelGrid>
                </p:dialog>
            </ui:define>

        </ui:composition>

    </body>
</html>



El problema que sucede es que al querer guardar un nuevo objeto de materiaPrima me arroja el siguiente error en pantalla desde PF " Error de conversión al definir el valor 'com.x.model.pojo.Productor@172d570f' para 'null Converter'.  "

#3
Creo que algo encontré por donde va el problema...

El asunto es que cuando defini los java_home y los catalina_home utilizo el mismo nombre de variable, por ende, las dos instancias de tomcat se estan ejecutando en las mismas carpetas.

corrijanme si me equivoco, Gracias
#4
Hola, hace mucho que no entraba al foro, resulta que hora tengo un problema y espero alguien me pueda ayudar un poco.

El asunto es el siguiente:

en un servidor con ubuntu tengo 2 usuarios en donde cada uno de ellos he instalado tomcat con su Java_home, catlaina_home , y puertos diferentes para cada uno de ellos.
En cada uno de ellos tengo la misma aplicación .war en sus respectivas carpetas webapp. Cuando levanto los servidores de forma independiente la aplicación funciona sin problemas.
El problema es cuando levanto los 2 tomcat al mismo tiempo, al iniciar sesión en un tomcat y navegar por la aplicación, en el otro tomcat la sesión se muere.

#5
Java / problema: incertar canvas en frame
11 Mayo 2008, 09:40 AM
hola pues bn la cosa esque teng un frame y estoy tratando de que al hacer click aparezca un canvas pero el problema que se me genera es el siguiente: que cuendo clickero en cualkier parte no aparece, pero cuandoaprieto aprieto click en cualkierparte y luego en el borde izkierdo de la ventana aparece la imagen del canvas, pero el problema que se borra el contenido dle frame

aki los codigos estan bien ordinarios porque estoyprobando nad amas

Código (java) [Seleccionar]
public class JuegoTuto {
   
    public static void main(String[] args) {
   
    juegoFrame juego = new juegoFrame();
    juego.show();
   
    }
}


Código (java) [Seleccionar]



import java.awt.event.*;
import java.awt.*;

public class juegoFrame extends Frame implements MouseListener {
int algo=0;
Carta cartita;

public juegoFrame(){
setTitle("lq ogeuJ");
setSize(455,400);
setLocation(400,400);
addMouseListener(this);


this.addWindowListener(new WindowAdapter(){
  public void windowClosing(WindowEvent we){
   System.exit(0);
  }
});

}
private void espaciosDestinados(Graphics g)
    {
        // cartas disponibles
    g.drawRect(30,50,70,95);
   
   
    // las 4 pintas
    g.drawRect(130,50,70,95);
    g.drawRect(205,50,70,95);
    g.drawRect(280,50,70,95);
    g.drawRect(355,50,70,95);
    // reverso
    g.drawRect(30,250,70,95);
    /*if(algo==1){
    g.drawImage(getToolkit().getImage("1.gif"), 0, 0, 70 , 95 , this);
    }*/
    }

public void mouseClicked(MouseEvent e){
cartita = new Carta("img\\1.gif");

algo=1;
this.add("Center",cartita);
//cartita.repaint();
System.out.println("qwew");

public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
public void mousePressed(MouseEvent e) {
}         
public void mouseReleased(MouseEvent e) {
}
    public void paint(Graphics g) {
      espaciosDestinados(g);
    }
   
   
}


Código (java) [Seleccionar]
import java.awt.*;

public class Carta extends Canvas {

/* PINTAS:
* 1 = corazon
* 2 = pica
* 3 = trebol
* 4 = diamante
*/
int pinta;

String carta;

    public Carta(String carta) {
    this.carta = carta;
    }
    public void paint( Graphics g ) {

g.drawImage(getToolkit().getImage(carta), 0, 0, 70 , 95 , this);

       }
       
   
}


porfas si mepudierna decir como se hace que nologro hacer que funke grx
#6
antes de subir el codigo corregido, quisiera arreglar otro problemita esque cuando el fichero no existe el que contiene los datos a cargar la aplicaiocne este s eme cuelga  y no se como hacer que no s eme caiga no se ocmo ocupar el java.io.FileNotFoundException
#7
ya salucione sla cosa er alo que decia casidiablo tenia que inicializar la cosa
#8
Java / ayuda con lectura y escritura de datos.ser
30 Octubre 2007, 04:50 AM
hola les cuento la cosa es que quiero guardad los datos de mi progreama en archivos serializables y cosa que al salir del programa guarde los datos y al iniciar el programa cargue los datos pero  teno un problemita la cosa esque al compilar todo bn

peor el problema e sque cuendo lo corro s eme cae el programa aver si le pueden echar un ojo a la cosa plz

aki van los codigos

ojo el error lo puse alfinal puede que se amejor leer el error primero

Código (java) [Seleccionar]
import java.io.*;
public class Taller{
public static Listas listas = new Listas();
public static BufferedReader teclado = new BufferedReader (new InputStreamReader(System.in));
public static Taller obj = new Taller();
public static byte opc = 0;
public static byte opc2 = 0;
public static Cliente client;
public static String vrut;


public static void main(String[] args) throws IOException,ClassNotFoundException{
listas.leerDatos();
obj.menu();
   
}

public void menu()throws IOException{//menu principal
System.out.println( "\t\t\t\t  MENU PRINCIPAL\n\n");
        System.out.println( "\t\t\t 1.-  Ingresar Cliente\n");//listo
        System.out.println( "\t\t\t 2.-  Agregar Cliente\n ");//listo
        System.out.println( "\t\t\t 3.-  Salir \n ");//listo
       
        System.out.print("\nIngrese opcion : ");
        try {
         
          opc = Byte.parseByte (teclado.readLine());
          }

          catch (Exception e) {
           
          System.out.println("\n\nIngrese solo Numeros");
          obj.menu();
        }
       
        switch (opc){
        case 1 : obj.ingresarCliente();
        break;
       
        case 2 :obj.agregarCliente();
        obj.menu();
        break;
       
        case 3 :listas.guarDatos();
        System.exit(0);
        break;
       
        default :System.out.println("\nINGRESE UNA OPCION VALIDA");
                obj.menu();
              break;
      }
      }//fin menu principal
       
    public void menuCliente()throws IOException{ //menu cliente
      System.out.println( "\t\t\t\t  MENU CLIENTE\n\n");
      System.out.println( "\t\t\t 1.-  Modificar Datos\n");
      System.out.println( "\t\t\t 2.-  Agregar Auto\n");//listo
      System.out.println( "\t\t\t 3.-  Reparaciones de autos\n");
      System.out.println( "\t\t\t 4.-  Deuda\n");
      System.out.println( "\t\t\t 6.-  Regresar\n");//listo
      System.out.print("\nIngrese opcion : ");
        try {
         
          opc2 = Byte.parseByte (teclado.readLine());
          }

          catch (Exception e) {
           
          System.out.println("\n\nIngrese solo Numeros");
          obj.menuCliente();
        }
       
        switch (opc2){
        case 1 :client.printAut();
        obj.menuCliente();
        break;
       
        case 2 :obj.agrarAudo();
        obj.menuCliente();
        break;
       
        case 3 :obj.agregarCliente();
        break;
       
        case 4 : obj.menuCliente();
        break;
       
        case 5 : obj.menuCliente();
        break;
       
        case 6 : obj.menu();
        break;
       
        default :System.out.println("\nINGRESE UNA OPCION VALIDA");
                obj.menuCliente();
              break;
     }   

}//fin Menu Cliente
public void menuRep()throws IOException{//menu Reparaciones
System.out.println( "\t\t\t\t  MENU PRINCIPAL\n\n");
        System.out.println( "\t\t\t 1.-  Agregar Reparacion\n");
        System.out.println( "\t\t\t 2.-  Modificar Reparacion\n ");
        System.out.println( "\t\t\t 3.-  Regresar \n ");//listo
       
        System.out.print("\nIngrese opcion : ");
        try {
         
          opc = Byte.parseByte (teclado.readLine());
          }

          catch (Exception e) {
           
          System.out.println("\n\nIngrese solo Numeros");
          obj.menu();
        }
       
        switch (opc){
        case 1 : obj.menuRep();
        break;
       
        case 2 :obj.menuRep();
        break;
       
        case 3 :obj.menuCliente();
        break;
       
        default :System.out.println("\nINGRESE UNA OPCION VALIDA");
                obj.menuRep();
              break;
      }
      }//fin menu Reparaciones

//Metodos Menu Principal
public void agregarCliente()throws IOException{

String nombre, apellido,direccion,telefono,rut;

System.out.println("Ingrese Nombre");
nombre = teclado.readLine();
System.out.println("Ingrese Apellido");
apellido = teclado.readLine();
System.out.println("Ingrese rut");
rut = teclado.readLine();
System.out.println("Ingrese Direccion");
direccion = teclado.readLine();
System.out.println("Ingresar Telefono");
telefono = teclado.readLine();
listas.addCliente(new Cliente(nombre, apellido, rut,telefono, direccion));
}

public void ingresarCliente()throws IOException{

System.out.println("Ingrese rut de Cliente");
vrut = teclado.readLine();

client = listas.buscaCliente(vrut);
if(client != null){
obj.menuCliente();
}
else{
System.out.println("El cliente no existe");
obj.menu();
}
}//Fin menu pricipal

//Metosdos menu Cliente

public void agrarAudo()throws IOException{

String marca,modelo,patente;
int anno;

System.out.println("Patente del Auto");
patente = teclado.readLine();
System.out.println("Marca Del Auto");
marca = teclado.readLine();
System.out.println("Modelo Del Auto");
modelo = teclado.readLine();
System.out.println("Año Auto");
anno = Integer.parseInt(teclado.readLine());
client.addAuto(new Auto(patente,marca,modelo,anno));
}

//Fin Metodos Menu Cliente
}


este es el metodo de escritura:
Código (java) [Seleccionar]
import java.io.*;
import java.util.*;
public class Escritura {
private FileOutputStream file;
private ObjectOutputStream output;

// Abrir el fichero
public void abrirA() throws IOException {
file = new FileOutputStream( "Datos.ser" );
output = new ObjectOutputStream(file);
}

// Cerrar el fichero
public void cerrar() throws IOException {
if (output!=null)
output.close();
}

// Escribir en el fichero
public void escribir (ArrayList lista) throws IOException {
if (output!=null)
output.writeObject(lista);
}
}

este el de lectura:
Código (java) [Seleccionar]
import java.util.*;
import java.io.*;
public class Lectura {
private FileInputStream file;
private ObjectInputStream input;

public void abrir() throws IOException {
file = new FileInputStream( "Datos.ser" );
input = new ObjectInputStream (file);
}

public void cerrar() throws IOException {
if (input!=null )
input.close();
}

public ArrayList leer () throws IOException, ClassNotFoundException {
ArrayList lista = null;
if (input!=null) {
try {
lista = (ArrayList) input.readObject();
}
catch (EOFException eof) {
// Fin del fichero
}
}
return lista;
}
}

y esta e sla clase de lo que estoy guardando
Código (java) [Seleccionar]
import java.io.*;
import java.util.*;
public class Listas implements Serializable {
public Cliente algo;
public static Escritura clientx = new Escritura();
private ArrayList clientes = new ArrayList();
public static Listas lis = new Listas();
private FileOutputStream file;
public Escritura escritura;
public static Lectura lec;

public Cliente buscaCliente(String vrut){
int i;
for(i=0;i<clientes.size();i++){
algo =(Cliente)clientes.get(i);
    if(vrut.equals(algo.getRut()) ){
    return algo;
   
}
return null;
}

public void addCliente(Cliente cliente)throws IOException{
clientes.add(cliente);
}
public void guarDatos()throws IOException{
escritura.abrirA();
escritura.escribir(clientes);
escritura.cerrar();
}
public void leerDatos()throws IOException,ClassNotFoundException{
lec.abrir();
clientes = lec.leer();
lec.cerrar();
}
}


bueno el error que me tira es este:
--------------------Configuration: <Default>--------------------
Exception in thread "main" java.lang.NullPointerException
    at Listas.leerDatos(Listas.java:32)
    at Taller.main(Taller.java:13)

Process completed.
#9
bueno muchas gracias

a todos por su ayuda
#10
m.. mira aver si esto esta mejor porlo menos me compila pero crea que hay algo de mas

deje asila cosa:

Código (java) [Seleccionar]
public int busca(String vrut){
int i;
for(i=0;i<clientes.size();i++){
algo =(Cliente)clientes.get(i);
    if(algo.getRut()==vrut)return i;
    return i;
    }
    return -1;
   
}


me compila pero creo que hay algo que esta sobrando