0
I have a problem in my web application in spring boot compiles and starts the server, but when it starts localhost:8080/buscar
appears the following error:
package com.web.app.Bresource;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.web.app.Cservice.Service;
import com.web.app.Emodel.Bicicleta;
/* Controlador*/
@org.springframework.stereotype.Controller
@RestController
public class Controller {
@Autowired
private Service Service;
@RequestMapping("/buscar") //buscar todos
public List<Bicicleta> getTodos() {
return Service.getTodos();
}
@RequestMapping("/buscar/{id}")
public Bicicleta getCodigo(@PathVariable int id) {
return Service.getCodigo(id); //buscar por codigo
}
//metodo post
@RequestMapping(method=RequestMethod.POST, value="/inserir")
public void addDados(@RequestBody Bicicleta inserir) {
Service.addDados(inserir);
}
//metodo put
@RequestMapping(method=RequestMethod.PUT, value="/atualizar/{id}")
public void atualizarDados(@RequestBody Bicicleta atualizar, @PathVariable String id) {
Service.atualizarDados(id, atualizar);
}
//metodo delete
@RequestMapping(method=RequestMethod.DELETE, value="/delete/{id}")
public Bicicleta deleteDados(@PathVariable String id) {
return Service.deleteDados(id);
}
//colocando dados
@RequestMapping(method = RequestMethod.POST)
public String dados() {
List<Bicicleta> bicicleta = new ArrayList<Bicicleta>();
Bicicleta nova = new Bicicleta(0, "Kaloi", "doze", "monarca", 2, "kaloi");
bicicleta.add(nova);
return "Dados no sistema";
}
}
Service class:
package com.web.app.Cservice;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import com.web.app.Drepository.TopicRepository;
import com.web.app.Emodel.Bicicleta;
import com.web.app.Bresource.Controller;
@org.springframework.stereotype.Service
public class Service {
@Autowired
private TopicRepository repository;
//buscar todos
public static List<Bicicleta> getTodos(){
return getTodos();
}
//buscar por codigo
public Bicicleta getCodigo(int id) {
return getCodigo(id);
}
//adicionar
public void addDados(Bicicleta inserir) {
((List<Bicicleta>) inserir).add(inserir);
}
public void atualizarDados(String marca, Bicicleta atualizar) {
Bicicleta t = new Bicicleta();
if(t.getMarca().equals(marca)) {
atualizar.setMarca(marca);;
return;
}
}
//metodo para criar o delete
public Bicicleta deleteDados(String id) {
if(id.equals(id)) {
deleteDados(id);
}
return deleteDados(id);
}
}
Someone’s been through it could help me?
The mistake is quite clear, since it is a
StackOverflowError
. Basically your methods inService
are calling themselves recursively without stopping criteria.– Bruno César