Controller Spring Boot mit Java

Hallo ihr lieben,

ich nutze Spingbroot seit kurzem und habe hierzu eine Frage. Ich habe ein Projekt wo ich die Oberfläche mit HTML und CSS bearbeite. Ich würde gerne den Spring boot Framework nutzen um http Request / Response zu erstellen.

Ich habe eine ganz einfache Login Seite mit HTML und CSS programmiert die , sobald man auf den Button "Login" klickt die nächste Seite zurückgeben soll. Wenn ich dies mit <a "href="...."></a> Funktioniert das aber ich würde es gerne mit einem Controller machen. Weil so im Link oben ".html" steht was natürlich nicht schön ist.

Habe im Java Code so etwas wie

@Controller
Public class Login{

@GetMapping(value="/hauptmenu")
public String nextWindow(){
Return "/hauptmenu"

}

Weiss aber nicht genau wie ich das über den login Button aufrufen kann..

Lg
 
Du hast Return großgeschrieben.

Zeige mal Deine "Login"-HTML, entweder ist dort eine Verlinkung enthalten oder ein Formular.

lg
 
Code:
<form action="/hauptmenu" method ="POST">
<label for ="username"... >
<input type="submit" value="login"></input>
 
Du nutzt auch als Form Method ein POST, aber dein Controller hat nur ein GET Mapping. Nutze entweder GET als Form Method (in welchem Fall die Inputs als Queryparameter in der URL übermittelt werden), oder nutze in Java ein PostMapping.
 
OK :)

iwie findet es bei mir die Seite nicht also bekomme die Fehlermeldung Objekt nicht gefunden url: localhost/hauptmenu
:(
 
Ignoriere bitte @Tobias-nrw Vorschlag erstmal. :) Was er dir gezeigt hat, ist die umständlichere @RequestMapping Variante von Spring Framework, nicht die @PostMapping Variante von Spring Boot.
 
Die Frage anders gestellt: Liefert aktuell die Spring Boot Anwendung (als Servlet bzw. .war Datei) die Seite aus, oder hast du die einfach nur statisch in einem Tomcat drin und lediglich der Tomcat liefert die Seiten aus?
 
Muss ganz ehrlich sagen, dass ich langsam.super verzweifelt bin ich will nur wine Seite öffnen nach dem Login mit dem spring boot Controller aber es funktioniert einfach nicht
 
Ups Sorry, du brauchst nur
Java:
@RequestMapping(value="/hauptmenu", method = RequestMethod.POST)
public String nextWindow(
  @RequestParam("username") String un,
  @RequestParam("password") String pw) {
    // todo
    return "/hauptmenu";
}
Ich saß auf dem falschen Pferd iwie...
 
Vielen Dank euch zwei :)

Und wie kann ich das in der HTML Datei ansprechen das es nach dem Button klock aufgerufen wird :)?
 
Ups Sorry, du brauchst nur
Java:
@RequestMapping(value="/hauptmenu", method = RequestMethod.POST)
public String nextWindow(
  @RequestParam("username") String un,
  @RequestParam("password") String pw) {
    // todo
    return "/hauptmenu";
}
Ich saß auf dem falschen Pferd iwie...
Worauf ich hinaus wollte:
Java:
@PostMapping("/hauptmenu")
public String nextWindow(
        @RequestParam("username") String un,
        @RequestParam("password") String pw) {
    // todo
    return "/hauptmenu";
}
 
Also in der HTML Datei "hauptmenu"
Steht eigentlich nichts nur
<p>Test</p>

Und in dem Login menu das was ich oben geschrieben hatte ☺
 
Nochmal die Frage: Wie deployst du denn überhaupt die Spring Boot Anwendung und wie genau deployst du diese "einfache" HTML Seite mit dem Formular drin? Wenn das zwei unterschiedliche Kontexte bzw. Webanwendungen im Tomcat sind, dann kann das gar nicht funktionieren. Wo genau (in welchem Pfad) liegt diese HTML Datei? Ist sie Teil der Ressourcen innerhalb der Spring Boot Anwendung?
 
Also habe ein Projekt "Benutzeroberfläche" in dem Ordner src/Main/resources/templates/
Befinden sich die HTML Dateien.

Wenn ich oben in der URL localhost/hauptmenu.html angebe öffnet es sich problemlos aber ich würde es gerne über Java aufrufen. Und nicht jede einzelne HTML Datei einzeln ☺ xD
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben