Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Zum Registrieren hast ja sicher nen Button oder irgendwas mit dem de auf das Servlet verlinken kannst.
im form teil und action schreib ich normal nie was außer ich glaube, wenn du statt Button Submit als input type nimmst kannste da das Servlet reinschreiben. bin ich etz aba ned sicher... Auf jeden Fall solltest du im form teil einen Namen haben und als methode eben post oder get je nach dem was du nutzt.
So. Meine methode ist es im javascript teil eine function zu definieren z.b.:
dieses komische hiddenfeld braucht man, weil.... gute frage ich weiß nur, dass der button irgendwie zu blöd zum kommunizieren ist und deswegen das hidden-feld dafür einspringen muss ^^
So. Ist das nun geschafft, sollte eigentlich beim klick auf den Button das gewünschte Servlet (hier: LoginServlet) gestartet werden. Dort kann man dann mit den übergebenen Parametern (hier: "login") alles anstellen was man möchte.
So mach ich das zumindest immer. Gibt bestimmt noch schönere wege
Ja genau ich habe einen Button.
Es wird halt nur das Servlet nicht gefunden... habe ich jetz schon mit vielen Beispielen vergliechen, ich finde einfach keinen Fehler mehr ...
In manchen IDEs/Tomcat Plugins wird immer er ROOT context verwendet, keine gute Idee imho, auf dem Prod Server gibt's dann 404 Fehler.
Es ist schon möglich eine Webapp ohne Kontext zu betreiben, aber sehr schäbig.
Es ist aber nicht möglich eine vernünftige Webapp ohne Grundkenntnisse zu schreiben.
ich habe es nun geschafft Daten von einem Formular an ein Servlet zu schicken.
Doch wird dann halt das Servlet im Browser angezeigt.
Wie mache ich das, dass das Servlet eine anderen Seite aufruft ?
Oder welche Möglichkeiten gibt es da noch, das Servlet erst gar nicht anzuzeigen?
Dann solltest du aber natürlich alles was du ausgeben möchtest in die JSP laden.
Und falls du bei richtigem Login zu einer anderen Seite möchtest logischerweise das index.jsp einfach durch AndereSeiteDieGeladenWerdenSoll.jsp ersetzen. :-D
Ich schau morgen aba nochmal nach ob das wirklich so ging... :###
Edit: Jop. Passt so wie es dasteht. Man kann statt forward auch include nehmen, was genau allerdings der Unterschied ist wissen wohl nur Google und Wikipedia ;-)
Ok, alles klar, hab gerade nachgeschaut, gibts erst ab spec 2.5, danke für den Denkanstoß!
Warum funktioniert es aber auch mit action="modules/mail"? Die webapp läuft nicht als root, liegt ganz normal unter webapps...
Ok, alles klar, hab gerade nachgeschaut, gibts erst ab spec 2.5, danke für den Denkanstoß!
Warum funktioniert es aber auch mit action="modules/mail"? Die webapp läuft nicht als root, liegt ganz normal unter webapps...
Wie heisst denn deine Webapp? (Ist normalerweise auch der Context)
Es ist möglich einer Webapp mehrere Contexte zuzuweisen, allerdings werden diese dann wie unterschiedliche Anwendungen behandelt, da kann man sich ganz tolle Fehler damit bauen, die erst in der Produktion richtig auffallen
naja, die jsp rufe ich auf mit http://localhost:8080/kfa/jsp/mail.jsp
das Servlet ist auf /modules/mail gemappt
Es funktioniert eben beides, mit dem context und ohne dem context in der action, also: /kfa/modules/mail und modules/mail
Es dürfte nur gehen wenn die jsp nicht im ordner jsp liegt, sondern im root von der webapp! Jetzt ist mir das ganze auch klar warum man den context angeben soll!
Dann läuft deine Anwendung einmal als ROOT Context, und einmal als kfa.
Sorry, aber eine andere Erklärung gibt es dafür nicht, denn der Context muss stimmen, sonst gibt nen 404 Fehler vom Server.
Wie startest du den Tomcat Server? Aus der IDE? Das WTP Tomat Plugin zB verändert die Tomcat Konfig dauerhaft, das Tomcat Plugin von Sysdeo auch.
Eine frische und saubere (!) Tomcat installation zum testen sollte helfen es herauszufinden, einfach manuell deployen.
Das würde im Produktivbetrieb zum ernsthaften Problem werden, lieber jetzt lösen.
Ich starte meine webapp nie aus der IDE, genau aus solchen Gründen.
Ich bezweifle dass meine Applikation als root gestartet wird. Soweit ich das verstanden habe lag der Fehler daran, dass die jsp im Ordner jsp liegt, und er dann als url : kfa/jsp/modules/mail verwendet hat, wenn man als action "modules/mail" verwendet.
Wenn ich aber als action "<%=request.getContextPath()%>/modules/mail" verwende ist die url /kfa/modules/mail weil der context /kfa ist, dann findet er auch das Servlet
Lieg ich richtig?