Correct way to use a Resultmap in myBatis xml

0

this using Java to build a website and I have the following

Order Mapper

    <resultMap type="Entidades.Pedido" id="rmPedido">
    <id column="tb_pedido_id" property="Id"/>
    <result column="tb_pedido_cli" property="Cliente"/>
    <result column="tb_pedido_dir" property="Direccion"/>
    <result column="tb_pedido_tel" property="Telefono"/>
    <result column="tb_pedido_tot" property="Total"/>
    <result column="tb_pedido_pag" property="Pago"/>
    <result column="tb_pedido_vue" property="Vuelto"/>
    <result column="tb_pedido_mod" property="Modalidad"/>
    <result column="tb_pedido_est" property="Estado"/>
    <result column="tb_pedido_fechorreg" property="fechahoraregistro"/>
    <result column="tb_pedido_fechormod" property="fechahoramodificacion"/>
    <result column="tb_pedido_fechorcon" property="fechahoraconfirmacion"/>
    <result column="tb_pedido_fechordes" property="fechahoradespacho"/>
    <association property="oSucursal" javaType="Entidades.Sucursal">
        <id column="tb_sucursal_id" property="id"/>
        <result column="tb_sucursal_nom" property="nombre"/>
    </association>
    <collection property="lDetallePedido" ofType="Entidades.DetallePedido">
        <id column="tb_detallepedido_id" property="id"/>
        <result column="tb_detallepedido_can" property="cantidad"/>
        <result column="tb_detallepedido_preuni" property="precioUnitario"/>
        <result column="tb_detallepedido_subtot" property="subtotal"/>
        <association property="oProducto" javaType="Entidades.Producto">
            <id column="tb_producto_id" property="id"/>
            <result column="tb_producto_nom" property="nombre"/>
        </association>
     </collection>                        
     </resultMap>

My Order object has the following structure

private int Id;
private String Cliente;
private String Direccion;
private String Telefono;
private double Total;
private double Pago;
private double Vuelto;
private String Modalidad;
private String Estado;
private Date FechaHoraRegistro;
private Date FechaHoraModificacion;
private Date FechaHoraConfirmacion;
private Date FechaHoraDespacho;
private Date FechaHoraAnulacion;
private Usuario oUsuario; //objeto
private Sucursal oSucursal;//objeto
private List<DetallePedido> lDetallePedido;

// getter and setters

However when making an insert from the xml Mapper

 <insert id="Insertar" parameterType="Entidades.Pedido">
    insert into tb_pedido
    (           

        tb_pedido_cli,
        tb_pedido_dir,
        tb_pedido_tel,
        tb_pedido_tot,
        tb_pedido_pag,
        tb_pedido_vue,
        tb_pedido_mod,
        tb_pedido_est,
        tb_usuario_id,
        tb_sucursal_id
    )
    values
    (

        #{Cliente},
        #{Direccion},
        #{Telefono},
        #{Total},
        #{Pago},
        #{Vuelto},
        #{Modalidad},
        #{Estado},
        #{oUsuario.id},
        #{oSucursal.id}
    );
</insert>

I get the following result

java.lang.NullPointerException
Servicios.PedidoServicio.Registrar(PedidoServicio.java:41)
Controladores.PedidoControlador.DatosPedido(PedidoControlador.java:226)
    
asked by paul zapata 11.08.2018 в 04:30
source

0 answers