Calling a Sevlet from jsp

  • In diversen Foren habe ich dazu keine Antwort finden können, die mein Problem löst.

    Ich hab eine jsp-Datei (my_jsp.jsp), aus der ich ein Servlet (MyServlet) aufrufen soll. Meine Ordnerstruktur schaut so aus:

    <tomcat-home-dir>/webapps/mywebapp/WEB-INF/classes/MyServlet.class

    <tomcat-home-dir>/webapps/mywebapp/jsp/my_jsp.jsp

    Die URL für das Servlet lautet:
    http://localhost:8080/mywebapp/servlet

    So weit ist alles gut. Aber wenn ich den <jsp:forward>-tag benutze passiert folgendes. Wenn ich also
    <jsp:include page="http://localhost:8080/mywebapp/Servlet" />
    verwende, dann wird die URL:
    mywebapp/jsp/http://localhost:8080/mywebapp/Servlet
    aufgerufen. Also das page-Attribute verlangt eine relative URL.

    Wie kann man dieses Problem lösen?

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • wie wärs damit:

    <jsp:forward page="Relative URL" />

    für relative url musst dann halt "servlet" oder "../servlet" oder sowas ähnliches einsetzen.
    oder funktioniert genau das nich?

  • include und forward tun in dem Fall genau das gleiche.

    Ich habs jetzt tatsächlich mit ..\servlet (...) gelöst. Vielleicht geht das eh nur so.

    edit: hmm, scheint aber auch nicht gscheit zu funktionieren...

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Stimmt das Servlet-Mapping ?
    Kann es vielleicht daran liegen, daß es nicht ganz gschickt is, ein Servlet IN einem JSP zu starten ? (wegen dem ganzen Init Zeugs usw., is schon lang her)

    [EDIT] Weils mir grad einfallt, ich glaub man kann Pseudo-absolute Links einfach nur durch voranstellen des "/" erzeugen: /mywebapp/Servlet

    yast, SuSEconfig, apt-get and rpm - the 4 horsemen of the apocalypse

    Platform of insanity :: http://www.dose-xp.org

  • Das Problem ist ziemlich ähnlich zu diesem hier in einem sun forum.

    Da klappt es mit <jsp:include>

    Das mit dem Schrägstrich ist mir auch aufgefallen, hat aber auch nicht geholfen. Wenn ich im <jsp:include> das page-Attribut absolut angebe, dann wird mein Servlet natürlich gefunden, aber dann krieg ich so komische jsp-wrapper-Exceptions von denen niemand eine Ahnung hat...

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!