Tuesday, October 13, 2009

Java Server Pages (JSP)

Java Server Pages (JSP)

Great JSP web site hosting can be found at Alden JSP Web Site Hosting.

JSP or JavaServer Pages, known to some as the Java Scripting Preprocessor, is a Java technology that allows developers to dynamically generate HTML, XML or some other type of web page. The technology allows Java code and certain pre-defined actions to be embedded into static content.

The JSP syntax adds additional XML tags, called JSP actions, to be used to invoke built-in functionality. Additionally, the technology allows for the creation of JSP tag libraries that act as extensions to the standard HTML or XML tags. Tag libraries provide a platform independent way of extending the capabilities of a web server.

JSPs are compiled into Servlets by a JSP compiler. A JSP compiler may generate a servlet in Java code that is then compiled by the Java compiler, or it may generate byte code for the servlet directly. In either case, it is helpful to understand how the JSP compiler transforms the page into a Java servlet. For an example, see the following input, and its resulting generated Java servlet.

JSP and Servlets

Architecturally speaking, you can view JSP as a high-level abstraction of servlets that is implemented as an extension of the Servlet 2.1 API.

JSP Syntax A JavaServer Page may be broken down into the following pieces:

* static data such as HTML
* JSP directives such as the include directive
* JSP scripting elements and variables
* JSP actions
* custom tags

Static data

Static data is written out to the HTTP response exactly as it appears in the input file. Thus a valid JSP input would be a normal HTML page with no embedded java or actions. In that case, the same data would be sent in the response each and every time by the web server. Of course, the point of JSP is to allow dynamic data to be inserted into the static content.

JSP directives

JSP directives control how the JSP compiler generates the servlet. The following directives are available:

* include The include directive informs the JSP compiler to include a complete file into the current file. It is as if the contents of the included file were pasted directly into the original file. This functionality is similar to the one provided by the C preprocessor.
<%@ include file="somefile.ext" %>
* page There are several options to the page directive.
o import results in a java import statement being inserted into the resulting file
o contentType specifies the content that is generated. This should be used if HTML is not used or if the character set is not the default character set.
o errorPage indicates the page that will be shown if an exception occurs while processing the HTTP request.
o isErrorPage if set to true, it indicates that this is the error page.
o isThreadSafe indicates if the resulting servlet is thread safe.
+ <%@ page import="java.util.*" %> //example import
+ <%@ page contentType="text/html" %> //example contentType
+ <%@ page isErrorPage=false %> //example for non error page
+ <%@ page isThreadSafe=true %> //example for a thread safe JSP
+ Note: Only the "import" page directive can be used multiple times in the same JSP.

JSP Actions

Great JSP web hosting can be found at Alden JSP Hosting.

JSP Actions

JSP actions are XML tags that invoke built-in web server functionality. The following actions are provided:

* jsp:include
Similar to a subroutine, the Java servlet temporarily hands the request and response off to the specified JavaServer Page. Control will then return to the current JSP, once the other JSP has finished. Using this, JSP code will be shared between two other JSPs, rather than duplicated.
* jsp:param
Can be used inside a jsp:include, jsp:forward or jsp:params block. Specifies a parameter that will be added to the request's current parameters.
* jsp:forward
Used to hand off the request and response to another JSP or servlet. Control will never return to the current JSP.
* jsp:plugin
Older versions of Netscape Navigator and Internet Explorer used different tags to embed an applet. This action generates the browser specific tag needed to include an applet.
* jsp:fallback
The content to show if the browser does not support applets.
* jsp:getProperty
Gets a property from the specified Java bean.
* jsp:setProperty
Sets a property in the specified Java bean.
* jsp:useBean
Creates or re-uses a Java bean available to the JSP page.

Tuesday, October 06, 2009

Tomcat Java Servlets Manager

Tomcat Java Servlets Manager

In many production environments, it is very useful to have the capability to deploy a new web application, or undeploy an existing one, without having to shut down and restart the entire container. In addition, you can request an existing application to reload itself, even if you have not declared it to be reloadable in the Tomcat 5 server configuration file.

To support these capabilities, Tomcat 5 includes a web application (installed by default on context path /manager) that supports the following functions:

* List the currently deployed web applications, as well as the sessions that are currently active for those web apps.
* Reload an existing web application, to reflect changes in the contents of /WEB-INF/classes or /WEB-INF/lib.
* List the OS and JVM property values.
* List the available security roles defined in the user database.
* Remove an installed web application.
* Start a stopped application (thus making it available again).
* Stop an existing application (so that it becomes unavailable), but do not undeploy it.
* Undeploy a deployed web application and delete its document base directory.

Alden Hosting offers Java Server Pages (JSP), Servlets, and Servlets Manager with our Web Hosting Plans WEB 4 PLAN and WEB 5 PLAN .