pessoal, to enfrentando o seguinte problema.
primeiramente desculpe se o titulo não condis com o problema, mas não sabia o que colocar.
as parcelas são salvas corretamente no banco mas a pagina da erro e no console aparece isso aqui>>
Hibernate:
select
cliente0_.id as id1_0_0_,
cliente0_.anotacao as anotacao2_0_0_,
cliente0_.nome as nome3_0_0_,
cliente0_.status as status4_0_0_
from
cliente cliente0_
where
cliente0_.id=?
Hibernate:
insert
into
emprestimo
(id, anotacao, cliente_id, data_emprestimo, n_parcelas, percentual, primeira_emprestimo, valor_emprestado, valor_solicitado)
values
(null, ?, ?, ?, ?, ?, ?, ?, ?)
Hibernate:
insert
into
parcela
(id, data_pagamento, emprestimo_id, n_parcela, valor_parcela)
values
(null, ?, ?, ?, ?)
Hibernate:
insert
into
parcela
(id, data_pagamento, emprestimo_id, n_parcela, valor_parcela)
values
(null, ?, ?, ?, ?)
Hibernate:
insert
into
parcela
(id, data_pagamento, emprestimo_id, n_parcela, valor_parcela)
values
(null, ?, ?, ?, ?)
Hibernate:
insert
into
parcela
(id, data_pagamento, emprestimo_id, n_parcela, valor_parcela)
values
(null, ?, ?, ?, ?)
Hibernate:
insert
into
parcela
(id, data_pagamento, emprestimo_id, n_parcela, valor_parcela)
values
(null, ?, ?, ?, ?)
Hibernate:
select
emprestimo0_.cliente_id as cliente_9_1_0_,
emprestimo0_.id as id1_1_0_,
emprestimo0_.id as id1_1_1_,
emprestimo0_.anotacao as anotacao2_1_1_,
emprestimo0_.cliente_id as cliente_9_1_1_,
emprestimo0_.data_emprestimo as data_emp3_1_1_,
emprestimo0_.n_parcelas as n_parcel4_1_1_,
emprestimo0_.percentual as percentu5_1_1_,
emprestimo0_.primeira_emprestimo as primeira6_1_1_,
emprestimo0_.valor_emprestado as valor_em7_1_1_,
emprestimo0_.valor_solicitado as valor_so8_1_1_
from
emprestimo emprestimo0_
where
emprestimo0_.cliente_id=?
e[2m2017-05-31 12:41:42.230e[0;39m e[31mERRORe[0;39m e[35m8911e[0;39m e[2m—e[0;39m e[2m[nio-8080-exec-2]e[0;39m e[36mo.a.c.c.C.[.[.[/].[dispatcherServlet] e[0;39m e[2m:e[0;39m Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.StackOverflowError] with root cause
java.lang.StackOverflowError: null
at sun.misc.FloatingDecimal$BinaryToASCIIBuffer.dtoa(FloatingDecimal.java:431) ~[na:1.8.0_131]
at sun.misc.FloatingDecimal$BinaryToASCIIBuffer.access$100(FloatingDecimal.java:259) ~[na:1.8.0_131]
at sun.misc.FloatingDecimal.getBinaryToASCIIConverter(FloatingDecimal.java:1785) ~[na:1.8.0_131]
at sun.misc.FloatingDecimal.getBinaryToASCIIConverter(FloatingDecimal.java:1738) ~[na:1.8.0_131]
at sun.misc.FloatingDecimal.toJavaFormatString(FloatingDecimal.java:70) ~[na:1.8.0_131]
at java.lang.Double.toString(Double.java:204) ~[na:1.8.0_131]
at java.lang.Double.toString(Double.java:644) ~[na:1.8.0_131]
at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_131]
at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_131]
at com.banking.emprestimos.model.Emprestimo.toString(Emprestimo.java:27) ~[classes/:na]
at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_131]
at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_131]
at java.util.AbstractCollection.toString(AbstractCollection.java:462) ~[na:1.8.0_131]
at org.hibernate.collection.internal.PersistentBag.toString(PersistentBag.java:510) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final]
@Service
public class EmprestimoService {
@Autowired
private Emprestimos emprestimos;
private Parcela p = new Parcela();
@Transactional
public void salvar(Emprestimo emprestimo) {
// --------------- calcula o valor a receber -------------
Double a = emprestimo.getValorSolicitado();//valor que esta pedindo
Double b = emprestimo.getPercentual();//percentualde juros sobre o valor emprestado
Double c = (a + (a * b / 100));//valor total que deverá ser pago
emprestimo.setValorEmprestado(c);//salva o valor a ser cobrado
gerarPrcelas(emprestimo);
emprestimos.save(emprestimo);
}
public void gerarPrcelas(Emprestimo emprestimo) {
ArrayList<Parcela> parcelas = new ArrayList<>();
int nParcelas = emprestimo.getNParcelas();
double valorParcelas = emprestimo.getValorEmprestado() / nParcelas;
for (int i = 0; i < nParcelas; i++) {
p.setNParcela(i);
p.setValorParcela(valorParcelas);
p.setEmprestimo(emprestimo);
parcelas.add(p);
p = new Parcela();
}
emprestimo.setListaParcelas(parcelas);
}
}
Meu controller:
@RequestMapping(value = "/novo", method = RequestMethod.POST)
public String salvar(Emprestimo emprestimo, Model model) {
try {
emprestimoService.salvar(emprestimo);
} catch (Exception e) {
System.out.println(e.getMessage());
System.out.println("Salvo>>>>>>>" + emprestimo);
}
System.out.println("Salvo>>>>>>>" + emprestimo);
return "redirect:/emprestimos/novo";
}