I have an HTML file and I want to use javascript to call a JSP file.
It doesn't have to be javascript, I'm just looking for the easiest way to call the JSP file from the HTML file.
How can I do this?
Thanks.
I have an HTML file and I want to use javascript to call a JSP file.
It doesn't have to be javascript, I'm just looking for the easiest way to call the JSP file from the HTML file.
How can I do this?
Thanks.
HTML/CSS/JavaScript runs at the client side. Java/JSP runs at the server side. The client and server are two distinct environments which usually runs at physically different machines, connected with each other by a network with the communication protocol being HTTP.
When the client requests a specific URL at the server, the server will run specific Java/JSP code and return a HTML/CSS/JS response back to the client. The client (webbrowser) will in turn execute the HTML/CSS/JS.
Knowing this fact, it should be obvious that the only way to let JavaScript access/invoke some Java/JSP code is to send a HTTP request to the server side. This can be done in several ways: using window.location
to do a synchronous GET request, or form.submit()
to do a synchronous GET or POST request, or XMLHttpRequest#send()
to do an asynchronous (ajaxical) request.
But you after all don't need JavaScript for this at all. A simple HTML link or form is also sufficient.
<a href=page.jsp>link</a>
or
<form action=page.jsp>
<input type=submit>
</form>
This will open the JSP file. If you'd like to run some business stuff prior to opening the JSP page, then better let the URL point to a Servlet like <a href=page>
which in turn forwards the request to the JSP page like
request.getRequestDispatcher(/WEB-INF/page.jsp).forward(request, response);
To learn more about the wall between Java/JSP and JavaScript you may find this article useful.