Boa noite professor. Estou dando continuidade ao curso. Estou com problemas no String expiration;
minha classe TokenService:
//injetando as dependencia do application properties
@Value("${forum.jwt.expiration}")
private String expiration;
@Value("${forum.jwt.secret}")
private String secret;
public String gerarToken(Authentication authentication) {
//pega o usuario logado
Usuario usuarioLogado = (Usuario) authentication.getPrincipal();
Date dataAtual = new Date();
Date dataExpiracao = new Date(dataAtual.getTime() + Long.parseLong(expiration));
return Jwts.builder()
//quem gera o token
.setIssuer("API do forum da Alura")
//quem é o usuario autenticado
.setSubject(usuarioLogado.getId().toString())
//quando o token foi gerado
.setIssuedAt(dataAtual)
//data de expiração
.setExpiration(dataExpiracao)
//token cripritografado
.signWith(SignatureAlgorithm.HS256, secret)
.compact();
}
}
Utilizo application.yml - (por opção)
# jwt
forum:
jwt:
secret: SqkW"pzLpD4KGg_Q3*5E(KcDH)*@g"r~C~dA!^Y,C+:m[^4,EcN%nVAE@(<UaAJ)8`Z4$XJLu{vxM+S;+GP3Akp'!\*nX7!B2nyJ
expiration: 86400000
Erro:
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'forum.jwt.expiration' in value "${forum.jwt.expiration}"
Dei uma olhada, não consegui achar o erro. Vou tentar mais amanha Se puder ajudar, ficarei grato rsrs Abraços