Part Eight contains appendixes.
This appendix describes the character-encoding schemes that are supported by the Java platform.
US-ASCII
US-ASCII is a 7-bit character set and encoding that covers the English-language alphabet. It is not large enough to cover the characters used in other languages, however, so it is not very useful for internationalization.
ISO-8859-1
ISO-8859-1 is the character set for Western European languages. It’s an 8-bit encoding scheme in which every encoded character takes exactly 8 bits. (With the remaining character sets, on the other hand, some codes are reserved to signal the start of a multibyte character.)
UTF-8
UTF-8 is an 8-bit encoding scheme. Characters from the English-language alphabet are all encoded using an 8-bit byte. Characters for other languages are encoded using 2, 3, or even 4 bytes. UTF-8 therefore produces compact documents for the English language, but for other languages, documents tend to be half again as large as they would be if they used UTF-16. If the majority of a document’s text is in a Western European language, then UTF-8 is generally a good choice because it allows for internationalization while still minimizing the space required for encoding.
UTF-16
UTF-16 is a 16-bit encoding scheme. It is large enough to encode all the characters from all the alphabets in the world. It uses 16 bits for most characters but includes 32-bit characters for ideogram-based languages such as Chinese. A Western European-language document that uses UTF-16 will be twice as large as the same document encoded using UTF-8. But documents written in far Eastern languages will be far smaller using UTF-16.
UTF-16 depends on the system’s byte-ordering conventions. Although in most systems, high-order bytes follow low-order bytes in a 16-bit or 32-bit “word,” some systems use the reverse order. UTF-16 documents cannot be interchanged between such systems without a conversion.
The character set and encoding names recognized by Internet authorities are listed in the IANA character set registry at http://www.iana.org/assignments/character-sets.
The Java programming language represents characters internally using the Unicode character set, which provides support for most languages. For storage and transmission over networks, however, many other character encodings are used. The Java 2 platform therefore also supports character conversion to and from other character encodings. Any Java runtime must support the Unicode transformations UTF-8, UTF-16BE, and UTF-16LE as well as the ISO-8859-1 character encoding, but most implementations support many more. For a complete list of the encodings that can be supported by the Java 2 platform, see http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.html.
Sun Microsystems provides certification examinations for Solaris administrators and different types of Java programmers. Sun also offers a learning path, consisting of training classes and practice exams, for each type of certification.
The Java EE learning path focuses on providing Java EE training for architects and for Web component, business component, and integration developers. Java EE training can lead to one of three certifications: Sun Certified Web Component Developer (SCWCD), Sun Certified Business Component Developer (SCBCD), or Sun Certified Enterprise Architect (SCEA).
You can use the Java EE Tutorial as preparation for the certification exams. This appendix provides details about how the sections of the exams map to chapters of the tutorial. Exam objectives change over time, and potential certification candidates should check http://www.sun.com/training/certification/ for the most up-to-date list of certification exam objectives.
This tutorial is not intended as a primer for the certification exams: it does not cover every subject to the depth that will be on the exam. The links below are presented so that you can use this tutorial as one of many sources for exam preparation.
This appendix provides information relating to the following certification exam: CX-310-083: Sun Certified Web Component Developer.
This appendix also provides information relating to the following course: SL-351–EE5: Business Component Development with Enterprise JavaBeansTM Technology.
The certification exam, CX-310-083: Sun Certified Web Component Developer, is for Sun Certified Programmers (any edition) who are using the Java Servlet technology and JavaServer Pages (JSP) application program interface (APIs) to develop Web applications.
Table B–1 Mapping from CX-310-083 Sections to Tutorial Chapters
Course Section |
Tutorial Chapters |
---|---|
Section 1: The Servlet Technology Model | |
Section 2: The Structure and Deployment of Web Applications | |
Section 3: The Web Container Model | |
Section 4: Session Management |
Chapter 3, Getting Started with Web Applications |
Section 5: Web Application Security | |
Section 6: The JavaServer Pages (JSP) Technology Model | |
Section 8: Building JSP Pages Using Standard Actions | |
Section 9: Building JSP Pages Using Tag Libraries | |
Section 10: Building a Custom Tag Library |
The course SL-351: Business Component Development with Enterprise JavaBeans Technology provides students with advanced concepts and skills in designing, developing, and deploying EJB applications for the business tier.
Table B–2 Mapping from SL-351 Modules to Tutorial Chapters
Course Module |
Tutorial Chapters |
---|---|
Module 1: Examine EJB Applications | |
Module 3: Examine session beans | |
Module 4: Examine Java Persistence API | |
Module 5: Model data association relationships using persistence entities | |
Module 6: Model inheritance and composition relationships using persistence entities | |
Module 7: Examine the Java Persistence query language | |
Module 8: Examine Java Messaging API | |
Module 9: Examine message-driven beans | |
Module 11: Examine EJB transactions | |
Module 12: Examine exception handling in an EJB application | |
Module 13: Use timer services | |
Module 14: Examine Java EE security |
Chapter 28, Introduction to Security in the Java EE Platform |
Java Architecture for XML Binding
Eric Jendrock is a staff writer at Sun Microsystems, where he leads the Java EE Tutorial and the Java WSIT Tutorial. Previously, he documented middleware products and standards. Currently, he writes about the Java Web Services Interoperability Technologies, the Java Architecture for XML Binding (JAXB), and security in the Java EE platform.
JavaServer Faces Technology, Web-Tier Technologies
Jennifer Ball is a staff writer at Sun Microsystems, where she documents JavaServer Faces technology. Previously she documented the Java2D API, deploytool, and JAXB. She holds an M.A. degree in Interdisciplinary Computer Science from Mills College.
Security
Debbie Carson is a staff writer at Sun Microsystems, where she documents the Java EE, Java SE, and Java Web Services Interoperability Technologies platforms. In previous positions she documented creating database applications using C++ and Java technologies and creating distributed applications using Java technology.
Java API for XML Web Services, Enterprise JavaBeans Technology, Java Persistence API
Ian Evans is a staff writer at Sun Microsystems, where he documents the Java EE and Java Web Services platforms and edits the Java EE platform specifications. In previous positions he documented programming tools, CORBA middleware, and Java application servers, and taught classes on UNIX, web programming, and server-side Java development.
Streaming API for XML, Java Architecture for XML Binding
Scott Fordin is a senior staff writer, illustrator, and online help specialist in the Java and XML Technology groups at Sun Microsystems. He has written numerous articles on Java, XML, and web service technologies. Scott has also written many developer guides, administrator guides, user guides (including the JAXB User’s Guide), specifications, white papers, and tutorials for a wide range of products. Some of his most recent work includes writing about the StAX APIs, Application Server troubleshooting, and Application Server error messages.
SOAP with Attachments API for Java, Java Message Service API
Kim Haase is a staff writer at Sun Microsystems, where she documents the Java EE platform and Java Web Services. In previous positions she documented compilers, debuggers, and floating-point programming. She currently writes about the Java Message Service, the Java API for XML Registries, SOAP with Attachments API for Java, the Java DB database, and Service Registry.