HttpStatus 405- http method get is not supported

Hallo,

ich versuche mich gerade daran ein Webshop zu schreiben. Ich habe jetzt versucht, einen Link in ein Servlet einzufügen. Beim Aufrufen des Links bekomme ich den Statuscode 405. Ich finde den Fehler nicht, bzw. ich kann mit dieser Fehleraussage nicht wirklich viel anfangen.

//diese Klasse wird über den Browser aufgerufen, der Link ist in der druckeBuchKatalog() - Methode

import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class KatalogServlet extends HttpServlet{

private PrintWriter out;

private Katalog katalog;

private Buch buch;

public void init(){
katalog = new Katalog();
}

private void druckeBuchKatalog() {

Collection buchSammlung = katalog.getAlleBuecher(); //buchSammlung greift auf die Arraylist zu
Iterator buchIterator = buchSammlung.iterator();
Buch buch = null;
while(buchIterator.hasNext()){
buch = (Buch)buchIterator.next();
out.print("" + „" + buch.getBuchTitel() +"“ + „“ );
out.println("" + buch.getPreis() + „“ );
}

}

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{

response.setContentType(„text/html“);
out = response.getWriter();

out.println("");
out.println("");
out.println(„Bücherliste“);
out.println("");
out.println("");
out.println("");
druckeBuchKatalog();
out.println("");
out.println("");
out.println("");
out.close();
}
}

//das ist die aufgrufene Klasse

import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class BuchServlet extends HttpServlet {

private PrintWriter out;

private Katalog katalog;

private Buch buch;

public void init() {
katalog = new Katalog();
}

public void doGet(HttpServletResponse response, HttpServletRequest request)
throws ServletException, IOException {

response.setContentType(„text/html“);
out = response.getWriter();

out.println("");
out.println("");
out.println("");
druckeBuchInfo(„isbn“);
out.println("");
out.println("

Hallo,

out.print("" + „" + buch.getBuchTitel() +"“ +

Sieht fuer mich auf den ersten Blick so aus, als sei der Link
nicht in Ordnung. Zwischen ‚href‘ und ‚target‘ ist kein Leerzeichen.

Gruss, Patrick

Hallo, danke für die Antwort.

das liegt leider nicht an dem leerzeichen. hab ich alles versucht.
hab immer noch diese fehlermeldung: HTTP Status 405 - HTTP method GET is not supported by this URL

martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Okay, Berichtigung …

in deinem BuchServlet ist doGet() nicht wirklich doGet() von HttpServlet, daher dem Container nicht bekannt und deshalb die
Fehlermeldung:

public void doGet(HttpServletResponse response, HttpServletRequest request )

Sollte so aussehen (wie auch schon in KatalogServlet geschehen):

public void doGet( HttpServletRequest request , HttpServletResponse response)

Gruss, Patrick