Können Sie ein Servlet mit einem Link aufrufen?

8

Können Sie ein Servlet mit einem Link aufrufen? Zum Beispiel

%Vor%

Und möglicherweise Parameter an das Anfrageobjekt übergeben, indem Sie sie zum Querystring hinzufügen.

Wenn nicht, habe ich so etwas gesehen:

%Vor%

Aber wie würde ich das auslösen? Zum Beispiel, wenn es JavaScript-Code wäre, könnte ich es in eine jQuery-Klick-Funktion einfügen, oder wenn dies ein Servlet wäre, würde ich es in eine Methode einfügen.

Aber wie kann ich diesen Code innerhalb einer JSP aufrufen? Soweit ich weiß, können Sie Java-Code nicht mit JavaScript-Ereignissen aufrufen.

    
Ankur 15.02.2010, 15:50
quelle

3 Antworten

11
%Vor%

ist vollkommen legal und wird funktionieren.

Dadurch wird die Methode doGet(..) des Servlets aufgerufen, und Sie können den Parameter mit request.getParameter("param")

abrufen     
Bozho 15.02.2010, 15:57
quelle
10

Nur um ein Missverständnis zu beseitigen:

  

Soweit ich weiß, können Sie Java-Code nicht mit Javascript-Ereignissen aufrufen.

Sie können Java-Code mit JavaScript-Code (und Ereignissen) perfekt aufrufen. Bis zu diesem Punkt müssen Sie JavaScript nur eine vollwertige HTTP-Anfrage an die Serverseite senden lassen. Es gibt grundsätzlich 3 Möglichkeiten dafür.

  1. Der erste Weg besteht darin, den Aufruf eines bestehenden Links / Buttons / Formulars zu simulieren. ZB

    %Vor%

    und

    %Vor%
  2. Die zweite Möglichkeit besteht darin, mit window.location eine einfache GET-Anfrage auszulösen. Zum Beispiel:

    %Vor%
  3. Die dritte Möglichkeit besteht darin, das XMLHttpRequest-Objekt zu verwenden, um eine asynchrone Anforderung auszulösen und die Ergebnisse zu verarbeiten. Diese Technik ist die Grundidee von "Ajax". Hier ist ein Firefox-kompatibles Beispiel:

    %Vor%

    Dies kann kürzer und überbrowsterkompatibel mit jQuery umgeschrieben werden.

Ersetzen Sie einfach http://www.google.com/search durch Ihr eigenes Servlet, damit die obigen Beispiele in Ihrer Umgebung funktionieren.

Weitere Hintergrundinformationen finden Sie unter diesem Artikel , die ebenfalls nützlich sind.

    
BalusC 15.02.2010 16:13
quelle
2

Vielleicht ist das folgende was Sie suchen:

%Vor%     
David Grant 15.02.2010 15:58
quelle