5-4 Developing Web Applications, Servlets, and JSPs for Oracle WebLogic Server
5.6 Customizing HTTP Error Responses
You can configure WebLogic Server to respond with your own custom Web pages or other HTTP resources when particular HTTP errors or Java exceptions occur, instead
of responding with the standard WebLogic Server error response pages.
You define custom error pages in the error-page element of the Java EE standard Web application deployment descriptor, web.xml. The web.xml file is located in the
WEB-INF directory of your Web application.
5.7 Determining the Encoding of an HTTP Request
WebLogic Server converts binary bytes data contained in an HTTP request to the correct encoding expected by the servlet. The incoming post data might be encoded in
a particular encoding that must be converted to the correct encoding on the server side for use in methods such as request.getParameter...
There are two ways you can define the code set:
■
For a POST operation, you can set the encoding in the HTML form tag. For example, this form tag sets SJIS as the character set for the content:
form action=http:some.host.commyWebAppfooindex.html input type=applicationx-www-form-urlencoded; charset=SJIS
form
When the form is read by WebLogic Server, it processes the data using the SJIS character set.
■
Because all Web clients do not transmit the information after the semicolon in the above example, you can set the code set to be used for requests by using the
input-charset element in the WebLogic-specific deployment descriptor, weblogic.xml.
The java-charset-name subelement defines the encoding used to convert data when the URL of the request contains the path specified with the
resource-path subelement.
This following example ensures that all request parameters that map to the pattern foo are encoded using the Java character set SJIS.
input-charset resource-pathfooresource-path
java-charset-nameSJISjava-charset-name input-charset
This method works for both GET and POST operations.
5.8 Mapping IANA Character Sets to Java Character Sets
The names assigned by the Internet Assigned Numbers Authority IANA to describe character sets are sometimes different from the names used by Java. Because all HTTP
communication uses the IANA character set names and these names are not always the same, WebLogic Server internally maps IANA character set names to Java
character set names and can usually determine the correct mapping. However, you can resolve any ambiguities by explicitly mapping an IANA character set to the name of a
Java character set.
To map on IANA character set to a Java character, set the character set names in the charset-mapping element of the WebLogic-specific deployment descriptor,
Creating and Configuring JSPs 5-5
weblogic.xml. Define the IANA character set name in the iana-charset-name element and the Java character set name in the java-charset-name element. See
Appendix B.14.2, charset-mapping, .
For example: charset-mapping
iana-charset-nameShift-JISiana-charset-name java-charset-nameSJISjava-charset-name
charset-mapping
5.9 Configuring Implicit Includes at the Beginning and End of JSPs
You can implicitly include preludes also called headers and codas also called footers for a group of JSP pages by adding include-prelude and
include-coda elements respectively within a jsp-property-group element in the Web application web.xml deployment descriptor. Their values are
context-relative paths that must correspond to elements in the Web application. When the elements are present, the given paths are automatically included as in an include
directive at the beginning and end of each JSP page in the property group respectively. When there is more than one include or coda element in a group, they are
included in the order they appear. When more than one JSP property group applies to a JSP page, the corresponding elements will be processed in the same order as they
appear in the JSP configuration section.
Consider the following files: templateprelude.jspf and templatecoda.jspf. These files are used to include code at the beginning and
end of each file in the following example:
Example 5–2 Implicit Includes
jsp-config jsp-property-group
display-nameWebLogicServerdisplay-name url-pattern.jspurl-pattern
el-ignoredfalseel-ignored scripting-invalidfalsescripting-invalid
is-xmlfalseis-xml include-preludetemplateprelude.jspfinclude-prelude
include-codatemplatecoda.jspfinclude-coda jsp-property-group
jsp-config
5.10 Configuring JSP Property Groups