Erro na tentativa de ler arquivo xml para banco de dados mysql

Ao tentar gerar o arquivo xml para ser feito upload e lido para o banco recebi as seguintes inconsistências:

<historico>
  <mesesHistoricos resolves-to="java.time.Ser">
    <byte>3</byte>
    <int>2017</int>
    <byte>4</byte>
    <byte>25</byte>
  </mesesHistoricos>
  <quantidade>10</quantidade>
  <produto>
    <descricao>Limão + Coco</descricao>
    <valor>5.80</valor>
  </produto>
</historico>

só gerou uma linha de histórico e o campo mesesHistorico mapeado comlocaldate do java 8 gerou a linha resolves-to=“java.time.Ser”> porque?

o codigo que gera é o seguinte :

public class SalvandoCarrinho {

	public static void main(String[] args) throws FileNotFoundException {

		Historico historico = new Historico();
		historico.setMesesHistoricos(LocalDate.of(2017,Month.MARCH , 30));
		historico.setQuantidade(10);
		//List<Produto> carrinho = new ArrayList<>();
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Pimenta", new BigDecimal("2.30")));
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Ervas finas", new BigDecimal("8.20")));
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Pimenta", new BigDecimal("8.20")));

		historico.setProduto(new Produto("Cramberry", new BigDecimal("9.20")));
		historico.setProduto(new Produto("Damasco + Nozes", new BigDecimal("3.50")));
		historico.setProduto(new Produto("Banana + Avelâ", new BigDecimal("4.50")));
		historico.setProduto(new Produto("Limão + Coco", new BigDecimal("5.80")));

		historico.setMesesHistoricos(LocalDate.of(2017,Month.APRIL , 25));
		historico.setQuantidade(10);
		//List<Produto> carrinho = new ArrayList<>();
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Pimenta", new BigDecimal("2.30")));
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Ervas finas", new BigDecimal("8.20")));
		historico.setProduto(new Produto("Crispy de Grão de Bico sabor Pimenta", new BigDecimal("8.20")));

		historico.setProduto(new Produto("Cramberry", new BigDecimal("9.20")));
		historico.setProduto(new Produto("Damasco + Nozes", new BigDecimal("3.50")));
		historico.setProduto(new Produto("Banana + Avelâ", new BigDecimal("4.50")));
		historico.setProduto(new Produto("Limão + Coco", new BigDecimal("5.80")));

		

		XStream xstream = new XStream(new DomDriver());
		
		xstream.alias("historico", Historico.class);
//		// xstream.aliasAttribute(Produto.class, "codigo", "codigo");
		xstream.alias("produto", Produto.class);

		OutputStream os = new FileOutputStream("./carrinho.xml");
		xstream.toXML(historico, os);
	}

}

Rafael, gerou uma linha só de historico, porque ele só aceitou o seu último setProduto. Para que isso funcione, você deve criar uma Lista de Historicos e setar cada uma dela com os dados.

No modelo que você fez, setou esse cara:

historico.setProduto(new Produto("Limão + Coco", new BigDecimal("5.80")));

Que foi o último que você chamou.