Insert DNI instead of email of the current user

0

I am inserting data in a request table in jsf . Everything is fine except one detail:

I want to place the email of the current user where the attribute nombre_empresa is, but instead I put the value of another attribute (dnidest) .

Thanks in advance, I leave my code:

Request Backing Bean.java

package client;
import java.io.Serializable;


import javax.enterprise.context.SessionScoped;
import javax.faces.context.FacesContext;
import javax.inject.Named;
import javax.servlet.http.HttpServletRequest;

@Named
@SessionScoped


public class PeticionBackingBean implements Serializable{
    int id;
      FacesContext context = FacesContext.getCurrentInstance();
        HttpServletRequest request = (HttpServletRequest) context.getExternalContext().getRequest();
   String descripcion;
  String peso;
    String dir_origen;
    String dir_destino;
    String fechaentr;
    String estado;
    String nombredest;
    String dnidest;
    String nombre_empresa=request.getUserPrincipal().getName();
    String nombre;


    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getDescripcion() {
        return descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    public String getPeso() {
        return peso;
    }

    public void setPeso(String peso) {
        this.peso = peso;
    }

    public String getDirorigen() {
        return dir_origen;
    }

    public void setDirorigen(String dir_origen) {
        this.dir_origen = dir_origen;
    }

    public String getDirdestino() {
        return dir_destino;
    }

    public void setDirdestino(String dir_destino) {
        this.dir_destino = dir_destino;
    }

    public String getFechaentr() {
        return fechaentr;
    }

    public void setFechaentr(String fechaentr) {
        this.fechaentr = fechaentr;
    }

    public String getEstado() {
        return estado;
    }

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

    public String getNombredest() {
        return nombredest;
    }

    public void setNombredest(String nombredest) {
        this.nombredest = nombredest;
    }

    public String getDnidest() {
        return dnidest;
    }

    public void setDnidest(String dnidest) {
        this.dnidest = dnidest;
    }

    public String getNombre_empresa() {

        return nombre_empresa;
    }

    public void setNombre_empresa(String nombre_empresa) {
        this.nombre_empresa = nombre_empresa;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

}

Request client bean.java

package client;

import com.mycompany.pfinal2psegrupo2.entidades.Peticion;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.enterprise.context.RequestScoped;
import javax.faces.context.FacesContext;

import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Entity;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import json.PeticionReader;
import json.PeticionWriter;


 @Named
@RequestScoped 

public class PeticionClientBean {
    @Inject

PeticionBackingBean bean;
  Client client;
  WebTarget target;
  @PostConstruct

public void init() {

client = ClientBuilder.newClient();
target = client.target("http://localhost:8080/PFinal2PSEGrupo2/webresources/com.mycompany.pfinal2psegrupo2.entidades.peticion");
}
@PreDestroy
public void destroy() {
client.close();
}
public Peticion[] getPeticiones() {
return target
.request()
.get(Peticion[].class);
}

public Peticion getPeticion() {
return target
.register(PeticionReader.class)
.path("{id}")
.resolveTemplate("id", bean.getId())
.request(MediaType.APPLICATION_JSON)
.get(Peticion.class);
}

public void putPeticion() {
      Peticion p = new Peticion();
         p.setId(bean.getId());
         p.setNombre(bean.getNombre());
         p.setDescripcion(bean.getDescripcion());
         p.setDirDestino(bean.getDirdestino());
         p.setDirOrigen(bean.getDirorigen());
         p.setDnidest(bean.getDnidest());
         p.setEstado(bean.getEstado());
         p.setFechaentr(bean.getFechaentr());
         p.setNombre_empresa(bean.getNombre_empresa());
         p.setNombredest(bean.getNombredest());
         p.setPeso(bean.getPeso());

         target.register(PeticionWriter.class).path("{id}").resolveTemplate("id", bean.getId()).request()
                 .put(Entity.entity(p,MediaType.APPLICATION_JSON));
     }
     public void addPeticion() {
            FacesContext context = FacesContext.getCurrentInstance();
        HttpServletRequest request = (HttpServletRequest) context.getExternalContext().getRequest();
         Peticion p = new Peticion();
         p.setId(bean.getId());
         p.setNombre(bean.getNombre());
         p.setEstado("publicada");
         p.setDescripcion(bean.getDescripcion());
         p.setDirDestino(bean.getDirdestino());
         p.setDirOrigen(bean.getDirorigen());
         p.setDnidest(bean.getDnidest());

         p.setFechaentr(bean.getFechaentr());
         p.setNombre_empresa(bean.getNombre_empresa());
         p.setNombredest(bean.getNombredest());
         p.setPeso(bean.getPeso());

         target.register(PeticionWriter.class)
                 .request()
                 .post(Entity.entity(p, MediaType.APPLICATION_JSON));

     }

public void borrarPeticion() {
        target.path("{id}").resolveTemplate("id", bean.getId()).request().delete();
}

}

Petition Reader.java

package json;

import com.mycompany.pfinal2psegrupo2.entidades.Peticion;
import java.io.IOException;
import java.io.InputStream;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import javax.json.Json;
import javax.json.stream.JsonParser;
import javax.ws.rs.Consumes;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.ext.MessageBodyReader;
import javax.ws.rs.ext.Provider;

@Provider
@Consumes(MediaType.APPLICATION_JSON)
public class PeticionReader implements MessageBodyReader<Peticion> {

    @Override
    public boolean isReadable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) {
      return Peticion.class.isAssignableFrom(type);
    }

    @Override
    public Peticion readFrom(Class<Peticion> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, String> httpHeaders, InputStream entityStream) throws IOException, WebApplicationException {
      Peticion peticion= new Peticion();
       JsonParser parser = Json.createParser(entityStream);
       while (parser.hasNext()) {
       switch (parser.next()) {
       case KEY_NAME:
       String key = parser.getString();
       parser.next();
       switch (key) {
             case "id":
                peticion.setId(parser.getInt());
                 break;
             case "nombre":
              peticion.setNombre(parser.getString());
                 break;

                case "descripcion":
                    peticion.setDescripcion(parser.getString());

                case "peso":
                   peticion.setPeso(parser.getString());
                case "dir_origen":
                    peticion.setDirOrigen(parser.getString());
                case "dir_destino":
                   peticion.setDirDestino(parser.getString());

                    case "dnidest":
                   peticion.setDnidest(parser.getString());

                     case "estado":
                   peticion.setEstado("publicada");

                     case "nombre_empresa":
                   peticion.setNombre_empresa(parser.getString());

                        case "nombredest":
                   peticion.setNombredest(parser.getString());

                      case "fechaentr":
                   peticion.setFechaentr(parser.getString());

             default:
             break;
              }
             break;
             default:
             break;
            }
             }
              return peticion;
             }
    }

Petition Writer.java

package json;
import com.mycompany.pfinal2psegrupo2.entidades.Peticion;
import java.io.IOException;
import java.io.OutputStream;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import javax.json.Json;
import javax.json.stream.JsonGenerator;
import javax.ws.rs.Produces;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.ext.MessageBodyWriter;
import javax.ws.rs.ext.Provider;

@Provider
@Produces(MediaType.APPLICATION_JSON)
public class PeticionWriter implements MessageBodyWriter<Peticion> {

    @Override
    public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) {
        return Peticion.class.isAssignableFrom(type);
    }

    @Override
    public long getSize(Peticion t, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) {
       return -1;
    }

    @Override
    public void writeTo(Peticion p, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) throws IOException, WebApplicationException {
        JsonGenerator gen = Json.createGenerator(entityStream);
        gen.writeStartObject()
       .write("id", p.getId())      
       .write("nombre", p.getNombre())
       .write("descripcion", p.getDescripcion())
       .write("peso", p.getPeso())
       .write("estado", p.getEstado())
       .write("dir_origen", p.getDirOrigen())
       .write("dir_destino", p.getDirDestino())
       .write("nombre_empresa", p.getNombre_empresa()) 
       .write("fechaentr", p.getFechaentr()) 
       .write("dnidest", p.getDnidest()) 
       .write("nombredest", p.getNombredest()) 

       .writeEnd();
        gen.flush();
    }

}

Entity class petition.java

package com.mycompany.pfinal2psegrupo2.entidades;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement;

/**
 *
 * @author Admin
 */
@Entity
@Table(name = "peticion")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "Peticion.findAll", query = "SELECT p FROM Peticion p"),
    @NamedQuery(name = "Peticion.findById", query = "SELECT p FROM Peticion p WHERE p.id = :id"),
    @NamedQuery(name = "Peticion.findByDescripcion", query = "SELECT p FROM Peticion p WHERE p.descripcion = :descripcion"),
    @NamedQuery(name = "Peticion.findByPeso", query = "SELECT p FROM Peticion p WHERE p.peso = :peso"),
    @NamedQuery(name = "Peticion.findByDirOrigen", query = "SELECT p FROM Peticion p WHERE p.dirOrigen = :dirOrigen"),
    @NamedQuery(name = "Peticion.findByDirDestino", query = "SELECT p FROM Peticion p WHERE p.dirDestino = :dirDestino"),
    @NamedQuery(name = "Peticion.findByFechaentr", query = "SELECT p FROM Peticion p WHERE p.fechaentr = :fechaentr"),
    @NamedQuery(name = "Peticion.findByEstado", query = "SELECT p FROM Peticion p WHERE p.estado = :estado"),
    @NamedQuery(name = "Peticion.findByNombredest", query = "SELECT p FROM Peticion p WHERE p.nombredest = :nombredest"),
     @NamedQuery(name = "Peticion.findByNombre", query = "SELECT p FROM Peticion p WHERE p.nombre = :nombre"),
     @NamedQuery(name = "Peticion.findByNombrempresa", query = "SELECT p FROM Peticion p WHERE p.nombre_empresa = :nombre_empresa"),
    @NamedQuery(name = "Peticion.findByDnidest", query = "SELECT p FROM Peticion p WHERE p.dnidest = :dnidest")})
public class Peticion implements Serializable {

    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Basic(optional = false)
    @Column(name = "id")
    private Integer id;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 255)
    @Column(name = "descripcion")
    private String descripcion;
    @Basic(optional = false)
    @NotNull
    @Column(name = "peso")
    private String peso;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 255)
    @Column(name = "dir_origen")
    private String dirOrigen;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 255)
    @Column(name = "dir_destino")
    private String dirDestino;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 15)
    @Column(name = "fechaentr")
    private String fechaentr;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 15)
    @Column(name = "estado")
    private String estado;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 50)
    @Column(name = "nombredest")
    private String nombredest;
    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 9)
    @Column(name = "dnidest")
    private String dnidest;

     @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 255)
    @Column(name = "nombre_empresa")
    private String nombre_empresa;

      @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 50)
    @Column(name = "nombre")
    private String nombre;

    public String getNombre_empresa() {

        return nombre_empresa;
    }

    public void setNombre_empresa(String nombre_empresa) {
        this.nombre_empresa = nombre_empresa;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public Peticion() {
    }

    public Peticion(Integer id) {
        this.id = id;
    }

    public Peticion(Integer id, String descripcion, String peso, String dirOrigen, String dirDestino, String fechaentr, String estado, String nombredest, String dnidest,String nombre_empresa) {
        this.id = id;
        this.descripcion = descripcion;
        this.peso = peso;
        this.dirOrigen = dirOrigen;
        this.dirDestino = dirDestino;
        this.fechaentr = fechaentr;
        this.estado = estado;
        this.nombredest = nombredest;
        this.dnidest = dnidest;
        this.nombre_empresa=nombre_empresa;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getDescripcion() {
        return descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    public String getPeso() {
        return peso;
    }

    public void setPeso(String peso) {
        this.peso = peso;
    }

    public String getDirOrigen() {
        return dirOrigen;
    }

    public void setDirOrigen(String dirOrigen) {
        this.dirOrigen = dirOrigen;
    }

    public String getDirDestino() {
        return dirDestino;
    }

    public void setDirDestino(String dirDestino) {
        this.dirDestino = dirDestino;
    }

    public String getFechaentr() {
        return fechaentr;
    }

    public void setFechaentr(String fechaentr) {
        this.fechaentr = fechaentr;
    }

    public String getEstado() {
        return estado;
    }

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

    public String getNombredest() {
        return nombredest;
    }

    public void setNombredest(String nombredest) {
        this.nombredest = nombredest;
    }

    public String getDnidest() {
        return dnidest;
    }

    public void setDnidest(String dnidest) {
        this.dnidest = dnidest;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (id != null ? id.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Peticion)) {
            return false;
        }
        Peticion other = (Peticion) object;
        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "com.mycompany.pfinal2psegrupo2.entidades.Peticion[ id=" + id + " ]";
    }

}
    
asked by Iskandarina 13.06.2018 в 22:18
source

1 answer

2

In Reader.java the break is not specified in the switch and finding a match will execute all the other lines.

    
answered by 13.06.2018 / 22:37
source