Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010068265 | QA76.76.H94 L48 2004 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
What is this book about?
If you're a Java programmer working with XML, you probably already use some of the tools developed by the Apache Software Foundation. This book is a code-intensive guide to the Apache XML tools that are most relevant for Java developers, including Xerces, Xalan, FOP, Cocoon, Axis, and Xindice.
Theodore Leung, a founding member of the Apache XML Project, focuses on the unique capabilities of these best-of-breed XML tools. With the help of a sample application, he demonstrates how you can use them in unison to develop professional XML/Java applications for the real world.
If you need in-depth information to help you assemble a workable toolbox for developing sophisticated XML-based applications, you'll find it in this volume.
What does this book cover?
In this book, you will find out about the following:
How the Apache XML Project relates to Java programming When you'll need some of Xerces' extra parsing features, like grammar caching How to use Xalan's XSLTC to compile XSLT stylesheets into Java Prerequisites and applications for FOP and Batik Cocoon concepts and development Development techniques and practical usage for Xindice How to develop back-end applications with XML RPC and Axis Applications and concepts for XML SecurityWho is this book for?
This book is written for professional Java developers who have had some exposure to XML and XSLT. To get the most from it, you should be familiar with Java, Java Web development technologies (e.g., servlets), and the command line Java tools.
Author Notes
Ted Leung is a Member of the Apache Software Foundation. He is a founding member of the Apache XML Project and served as the chairman of the XML Project Management Committee from March, 2001 to June, 2003.
He is also the principal of Sauria Associates, LLC, a Pacific Northwest consultancy focused on high-impact software development. He has served companies such as F5 Networks, IBM, Enkubator, Apple Computer, and Taligent in roles spanning technical lead through chief technology officer. Ted holds a S.B in Mathematics from the Massachusetts Institute of Technology and a Sc.M. in Computer Science from Brown University.
Ted has given a number of technical presentations at industry conferences, including Software Development West and ApacheCon. A full list of his speaking engagements is available at http://www.sauria.com/presentations.html.
Table of Contents
Acknowledgments | p. ix |
Introduction | p. xvii |
Chapter 1 Xerces | p. 1 |
Prerequisites | p. 2 |
Well-Formedness | p. 3 |
Validity | p. 4 |
Entities | p. 6 |
XML Parser APIs | p. 6 |
SAX | p. 8 |
DOM | p. 13 |
Installing Xerces | p. 15 |
Development Techniques | p. 16 |
Xerces Configuration | p. 16 |
Deferred DOM | p. 20 |
Schema Handling | p. 20 |
Grammar Caching | p. 23 |
Entity Handling | p. 29 |
Entity References | p. 31 |
Serialization | p. 34 |
XNI | p. 38 |
Using the Samples | p. 43 |
CyberNeko Tools for XNI | p. 44 |
NekoHTML | p. 44 |
ManekiNeko | p. 44 |
NekoPull | p. 45 |
Practical Usage | p. 48 |
Common Problems | p. 49 |
Applications | p. 50 |
Chapter 2 Xalan | p. 53 |
Prerequisites | p. 53 |
XPath | p. 53 |
XSLT | p. 62 |
Installing and Configuring Xalan | p. 69 |
Development Techniques | p. 70 |
TrAX | p. 70 |
Xalan Specific Features | p. 81 |
XSLTC | p. 91 |
Xalan Extensions | p. 97 |
Practical Usage | p. 104 |
Applications | p. 104 |
Chapter 3 FOP | p. 113 |
Prerequisites | p. 114 |
Basic XSL | p. 115 |
Flows | p. 115 |
List Blocks | p. 116 |
Generating XSL with XSLT | p. 117 |
Tables | p. 119 |
Installing and Configuring FOP | p. 123 |
Hyphenation | p. 124 |
Development Techniques | p. 125 |
Embedding | p. 125 |
Using the Configuration Files and Options | p. 127 |
SAX | p. 129 |
DOM | p. 131 |
XSLT | p. 133 |
Validating XSL | p. 135 |
Command-Line Usage | p. 135 |
Ant Task | p. 137 |
Fonts | p. 138 |
Output | p. 140 |
Graphics | p. 143 |
FOP Extensions | p. 145 |
Practical Usage | p. 146 |
Applications | p. 146 |
Chapter 4 Batik | p. 155 |
Prerequisites | p. 156 |
Static SVG | p. 156 |
Dynamic SVG | p. 164 |
Installing and Configuring Batik | p. 169 |
Development Techniques | p. 170 |
SVGGraphics2D | p. 171 |
JSVGCanvas | p. 183 |
Image Transcoding | p. 187 |
SVG Scripting | p. 191 |
Security | p. 197 |
SVG Rasterizer | p. 202 |
Command Line | p. 202 |
SVG Browser | p. 205 |
SVG Pretty-Printer | p. 206 |
SVG Font Converter | p. 207 |
Practical Usage | p. 208 |
Applications | p. 209 |
Rich Client User Interfaces | p. 212 |
Chapter 5 Cocoon Concepts | p. 213 |
Prerequisites | p. 213 |
Concepts | p. 214 |
Sitemap | p. 214 |
Generators | p. 223 |
Transformers | p. 225 |
Serializers | p. 229 |
Matchers | p. 231 |
Selectors | p. 233 |
Actions | p. 234 |
Action Sets | p. 236 |
Readers | p. 236 |
Views | p. 238 |
Resources | p. 239 |
[left angle bracket]pipeline[right angle bracket] elements | p. 239 |
Cocoon URIs | p. 241 |
XSP | p. 242 |
Sessions | p. 253 |
Chapter 6 Cocoon Development | p. 255 |
Installing and Configuring Cocoon | p. 255 |
Configuring Cocoon | p. 257 |
Development Techniques | p. 258 |
Database Access | p. 258 |
Simple Application | p. 269 |
Practical Usage | p. 283 |
Performance | p. 283 |
Applications | p. 284 |
Chapter 7 Xindice | p. 285 |
Prerequisites | p. 286 |
XML:DB | p. 287 |
XUpdate | p. 293 |
Installing and Configuring Xindice | p. 299 |
Command-Line Tools | p. 300 |
Runtime Environment | p. 300 |
Adding to the Database | p. 300 |
Retrieval | p. 302 |
Deleting | p. 303 |
Indexing | p. 304 |
Other | p. 306 |
Development Techniques | p. 307 |
XML:DB API | p. 307 |
Practical Usage | p. 329 |
Applications | p. 329 |
XMLServlet: Accessing Xindice | p. 330 |
XSLTServletFilter | p. 334 |
Deployment Descriptors | p. 337 |
XSLT Stylesheets | p. 338 |
A SAX-based Version | p. 341 |
XPathResultHandler | p. 346 |
Chapter 8 XML-RPC | p. 349 |
Prerequisites | p. 350 |
Concepts | p. 350 |
XML Encoding RPCs | p. 351 |
Using HTTP as an RPC Transport | p. 354 |
Installing and Configuring XML-RPC | p. 356 |
Development Techniques | p. 356 |
A Simple Client | p. 357 |
Mapping to Java Types | p. 358 |
A Simple Server | p. 359 |
Asynchronous Clients | p. 361 |
Getting More Control Over Server Processing | p. 363 |
Handling BASIC Authentication on the Server | p. 365 |
XML-RPC in Existing Servers | p. 366 |
Using SSL | p. 368 |
Practical Usage | p. 373 |
Applications | p. 373 |
Simplifying XML-RPC | p. 373 |
Chapter 9 Axis | p. 379 |
Prerequisites | p. 380 |
Concepts | p. 380 |
SOAP | p. 380 |
WSDL | p. 384 |
JAX-RPC | p. 392 |
Installing and Configuring Axis | p. 399 |
Deployment Environment Setup | p. 400 |
Development Environment Setup | p. 401 |
Development Techniques | p. 402 |
Axis Conceptual Model | p. 402 |
Axis and WSDL | p. 407 |
Accessing the ServletContext | p. 434 |
Message Service | p. 436 |
Handlers | p. 442 |
.jws Web Services | p. 448 |
Tools | p. 449 |
Practical Usage | p. 453 |
Applications | p. 454 |
Chapter 10 XML Security | p. 455 |
Prerequisites | p. 456 |
One-Way Hashing | p. 456 |
Symmetric Key Encryption | p. 457 |
Public Key Encryption | p. 457 |
Digital Signatures | p. 457 |
Concepts | p. 458 |
Canonicalization | p. 459 |
Installing and Configuring XML Security | p. 470 |
Development Techniques | p. 471 |
Canonicalizing and Computing the Digest | p. 471 |
Signing | p. 474 |
Verification | p. 485 |
More Signatures | p. 490 |
Resolvers | p. 493 |
Encryption | p. 495 |
Practical Usage | p. 501 |
Applications | p. 502 |
Index | p. 503 |