Mixing Client-Side and Server-Side Code
I touched on the difference between server-side code and client-side code in Chapter 3. JSP is a server-side technology, so all JSP elements, such as actions and scriptlets, execute on the server before the resulting page is sent to the browser. A page can also contain client-side code, such as JavaScript code or Java applets, to provide a more interactive user interface. This code is executed by the browser itself.
A JSP page can generate JavaScript code dynamically the same way it
generates HTML, WML, or any other type of text contents. Therefore,
you can add client-side scripting code to your JSP pages. The
important thing to keep in mind here is that even though you can
include JavaScript code in your JSP page, the container
doesn’t see it as code at all. It treats it as
template text and just sends it to the browser together with the rest
of the response. Also remember that the only way a browser can invoke
a JSP page is to send an HTTP request; there is no way that a
JavaScript event handler such as onClick
or
onChange
can directly invoke a JSP element such as
an action, a scriptlet, or a Java method declared with a JSP
declaration in a JSP page. A client-side script can ask the browser
to make a request for a complete page, but there is no way that the
script can process the response and use it to do something such as
populate a selection list with the data.
Applets can make your pages more interesting and provide an easier-to-use interface ...
Get JavaServer Pages, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.