# webapp controller funktioniert nicht



## mankingwwe (20. Aug 2018)

Hey, bin was Webprogrammierung angeht ein Anfänger. Aus einem Grund den ich nicht kenne bekomme ich eine 404, wenn ich mein Programm starte. Hier paar Infos..


```
@RestController
public class LoginController {

    @RequestMapping("/")
    public String index() {
        return "Greetings from Spring Boot!";
    }

}
```

---



```
@SpringBootApplication
public class WebappApplication {

   public static void main(String[] args) {
      SpringApplication.run(WebappApplication.class, args);
   }
}
```


----------



## mrBrown (20. Aug 2018)

Du solltest das nicht auf einem Tomcat deployen, das Projekt ist als Standaloen-Variante gedacht.

Du kannst das ganze über die Konsole unter Unix mit `./mvnw spring-boot:run` und unter Windows mit `mvnw.cmd spring-boot:run` starten.

Alternativ das Projekt mit `./mvnw package`/`mvnw.cmd package` bauen und die jar ganz normal starten.


Beides geht auch in IntelliJ über die Maven-Toolbar.


----------



## sascha-sphw (21. Aug 2018)

Lass doch einfach die Konfiguration laufen die über Deiner Tomcat Konfig steht. (Spring Boot)

Wenn Du das ganze in einem Tomcat deployen möchtest muss die Application so aussehen.

```
@SpringBootApplication
public class WebappApplication extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(WebappApplication.class);
    }

    public static void main(String[] args) {
        SpringApplication.run(WebappApplication.class, args);
    }
}
```
Zudem musst Du in der pom.xml <packaging>war</packaging> setzen.

Das ändert aber nichts daran, dass du dennoch zum testen in der IDE die Spring Boot Konfig laufen lässt.


----------



## mankingwwe (21. Aug 2018)

Danke für eure Antworten bin aktuell bis morgen noch im Urlaub, deshalb kann ich es erst dann prüfen !
Wann macht es denn Sinn, etwas als Standalone zu haben und wann es als war auf einem Tomcat zu deployen?


----------

