Olá amigos, bom...fui curioso e estou , junto com o código da aula, testando para ver o comportamento do código. No caso do validações, o código que verifica o período apresentou um erro. Gostaria de saber se alguém pegou o mesmo erro e conseguiu solucionar....segue o código do teste:
package br.com.alura.rh.teste;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import br.com.alura.rh.model.Cargo;
import br.com.alura.rh.model.Funcionario;
import br.com.alura.rh.service.ReajusteService;
import br.com.alura.rh.service.ValidacaoPercentualReajuste;
import br.com.alura.rh.service.ValidacaoPeriodicidadeEntreReajustes;
import br.com.alura.rh.service.ValidacaoReajuste;
public class TesteReajuste {
public static void main(String[] args) {
Funcionario pedro = new Funcionario("Pedro", "123.456.789-10", Cargo.ASSISTENTE, new BigDecimal("3500.00"));
BigDecimal aumento = new BigDecimal("1350.00");
ValidacaoPercentualReajuste percentualReajuste = new ValidacaoPercentualReajuste();
ValidacaoPeriodicidadeEntreReajustes periodoReajuste = new ValidacaoPeriodicidadeEntreReajustes();
percentualReajuste.validar(pedro,aumento );
periodoReajuste.validar(pedro,aumento);
List<ValidacaoReajuste> listaValidacoes = new ArrayList<>();
listaValidacoes.add(periodoReajuste);
listaValidacoes.add(percentualReajuste);
ReajusteService novoReajuste = new ReajusteService(listaValidacoes);
novoReajuste.reajustarSalario(pedro,aumento);
System.out.println(pedro.getSalario());
}
}
Segue o erro apresentado :
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.time.temporal.Temporal.until(java.time.temporal.Temporal, java.time.temporal.TemporalUnit)" because "temporal1Inclusive" is null
at java.base/java.time.temporal.ChronoUnit.between(ChronoUnit.java:272)
at br.com.alura.rh.service.ValidacaoPeriodicidadeEntreReajustes.validar(ValidacaoPeriodicidadeEntreReajustes.java:18)
at br.com.alura.rh.teste.TesteReajuste.main(TesteReajuste.java:24)
As classes de validação são as mesmas da aula...tomei o cuidado de copiar exatamente igual neste ultimo caso pq detectei o erro ...pensei que poderia ser algum erro de digitação , então refiz igual ao código do instrutor...