Estou recebendo esse erro 500 no método POST no console do navegador e também aparece um exceção java.lang.NullPointerException: text. Se alguém passou por isso ou sabe resolver, eu agradeço!
Home Oferta
<html>
<head th:replace="~{base :: head}"></head>
<body onLoad = "onLoad()">
<div th:replace="~{base :: logo}"></div>
<div class="container" id="ofertas">
<div th:replace="~{base :: titulo('Faça Sua Oferta')}"></div>
<div class="card mb-3" v-for= "pedido in pedidos">
<div class="card-header alert alert-dark" >{{pedido.nomeProduto}}</div>
<div class="card-body">
<div class="row">
<div>Produto</div>
<div><a v-bind:href= "pedido.urlProduto">{{pedido.nomeProduto}}</a></div>
<div>Descrição</div>
<div>
<textarea disabled="disabled" class="form-control">{{pedido.descricao}}</textarea>
</div>
<div class="col-12 col-sm-8 mb-3">
<div class="row mt-3">
<div class="col-md-5">Valor: <input class="form-control" v-model="pedido.valorNegociado" /> </div>
<div class="col-md-5">Data de Entrega: <input class="form-control" v-model="pedido.dataDaEntrega" /> </div>
</div>
<div class="mt-2">
<label>Comentário</label>
<textarea class="form-control" v-model="pedido.comentario" ></textarea>
</div>
<button v-on:click="enviarOferta(pedido)" class="btn btn-primary mt-2" >Enviar Oferta</button>
</div>
<div class="col-12 col-sm-4">
<div>
<img class="img-thumbnail" v-bind:src= "pedido.urlImagem"/>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
function onLoad() {
var app = new Vue({
el : '#ofertas',
data : {
pedidos : []
},
mounted () {
axios
.get('http://localhost:8080/api/pedidos/aguardando')
.then(response => (this.pedidos = response.data))
},
methods:{
enviarOferta: function(pedido) {
axios
.post('http://localhost:8080/api/ofertas' , {
pedidoId: pedido.id,
dataDaEntrega: pedido.dataDaEntrega,
valor: pedido.valorNegociado,
comentario: pedido.comentario
})
.then(response => console.log(response));
}
}
});
}
</script>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</body>
</html>