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)