JaVa
   

Java exceptions, 150 generating WSDL from, 173–174 mapping SOAP-encoded types to, 125 messaging in, 411–428 method declaration, 150 service definition interfaces, 315 Web services and, 20–21 Java 2 Enterprise version (J2EE), 21, 33 Activity Service for Extended Transactions, 618 architecture, 715 blueprints, 201 containers, 401 JAX-RPC and, 398–402 security and, 669–672 servers, 619 Java API for WSDL (JWSDL), 169 Java API for XML Messaging. See JAXM Java API for XML Processing. See JAXP Java API for XML Registries. See JAXR Java API for XML-Based Remote Procedure Calls. See JAX-RPC Java Architecture for XML Binding. See JAXB Java Authentication and Authorization Service (JAAS), 669–672 APIs, 671 app use, 670 configuration file name, 670 location, 672 LoginModule(s), 670 pluggable authentication, 669, 670 Java classes generating, 551–552 WSDL and, 173 Java Community Process (JCP), 405 Java Cryptography Extensions (JCE), 672–676 Blowfish example, 674 core classes, 675–676 defined, 672 framework, 672, 675 keystore, 676 MD5 example, 673–674 principle, 672 service support, 673 Java Keystore (JKS), 643 Java Message Service. See JMS Java Naming and Directory Interface (JNDI), 399, 493, 669, 716 Java Remote Method Protocol (JRMP), 316 Java Server Faces, 275 Java Server Pages (JSP), 275 custom actions, 771 example using JSTL tags, 781–783 multiple containers, 771 as presentation tier basis, 714 Java Server Pages Standard Tag Library. See JSTL Java Transaction API (JTA), 591–593 defined, 591 transaction managers, 592 transaction managers components, 594 transaction managers/app programs contract, 591 transaction managers/app services contract, 592 transaction managers/transactional resource contract, 592 transactions, 401 UserTransaction interface, 618 Java Transaction Service (JTS), 591, 593 defined, 593 transaction manager, 593 Java WSDP (JWSDP), 21, 267–276 Ant, 270–271 availability, 267 components, 268–275 components illustration, 269 defined, 265, 267 Java XML APIs, 268–269 JAXB, 269 JAXM, 268 JAXP, 268 JAXR, 268 JAX-RPC, 268 registry browser, 275 registry server, 270 SAAJ, 268 setting up, 268 summary, 276 supporting specifications, 275 Tomcat Web container, 270 tools, 270–275 wscompile tool, 273–274 wsdeploy tool, 271–273 XML descriptor, 466 See also JAX APIs Java XML pack, 267 JavaBeans Activation framework, 368 javadoc declaration, 572 bindings affected by, 573–574 defined, 572 See also binding declarations JavaMail, 419–428 advantages, 427–428 API illustration, 420 asynchronous B2B messaging with, 426 for complex messaging apps, 426 conceptual model, 419 drawbacks, 428 implementation cost reduction, 428 infrastructure leveraging, 427 Message, 420, 421 message sorting facilities, 427 message structure, 421 messaging MOMs elimination, 427 multiple recipient delivery support, 427 notifications support, 427 packages, 420 Provider, 420 receiving mail with, 424 security support, 427 sending mail with, 420 Session, 420 transaction support and, 428 Transport, 420 See also messaging javaType declaration, 575–576 annotation result, 576 defined, 575 syntax, 575 See also binding declarations Java-WSDL mappings, 345–355 checked expressions, 350–351 extended interface, 347–348 interface, 346 Java identifiers, 351 method, 347 method arguments, 348–349 method returns, 349–350 package, 346 Java-XML bindings, 119 javax.xml.bind.helper package, 560 javax.xml.bind package, 559–560 javax.xml.bind.util package, 560 javax.xml.bind.Validator interface, 566 javax.xml.messaging, 430 core interfaces, 452 defined, 430 javax.xml.messaging.ReqRespListner interface, 447 javax.xml.parsers, 280, 282, 290, 291 DOM, 290, 291 SAX, 280, 282 javax.xml.registry.infomodel package, 483 javax.xml.rpc.handler.Handler interface, 372 javax.xml.soap, 430 JAXM use of, 473 JAX-RPC use of, 473 SAAJ model in, 440 javax.xml.soap.SOAPConnectionFactory, 442 javax.xml.soap.SOAPMessage, 372 javax.xml.transform.dom package defined, 302 interfaces, 304 javax.xml.transform package defined, 302 interfaces, 304 javax.xml.transform.sax package defined, 302 interfaces, 305 javax.xml.transform.stream package defined, 302 interfaces, 305 JAX APIs defined, 265 JAXB, 266, 545–580 JAXM, 266, 405–477 JAXP, 265, 277–312 JAXR, 266, 479–544 JAX-RPC, 265, 313–403 JWSDP, 265, 267–276 overview, 265–266 JAXB, 545–580 abstraction layer, 545 additional mappings, 555 annotation element, 568 appInfo element, 568 app code writing, 552–554 architecture, 550 architecture illustration, 550 business documents, 334–335 code to read XML documents, 552–553 context, 560 customizing, 567–579 defined, 266, 545 developing with, 551–554 goal, 549 implementations, 551, 560 Java class generation, 551–552 JAX-RPC and, 559 as JWSDP component, 269 namespace, including, 569–570 need for, 545–549 passing techniques, 567 specifications, 269, 545 summary, 580 use scenarios, 549 validation, 566–567 validation handler, 562 when to use, 549 See also JAX APIs JAXB API, 550, 553, 559–566 Element interface, 564–565 JAXBContext, 560–561 Marshaller, 562–564 Unmarshaller, 561–562 Validator interface, 566–567 JAXBContext, 553, 560, 561 JAXM, 131, 405–477 API, 430 API core, 451 architectural stack, 430 architecture, 428–433 choosing, 475 clients, 472 conceptual model, 429 consumers, 429 defined, 266, 405 design, 405 designing with, 434–439 developing with, 439–472 EJB and, 470–471 as interface to JMS, 475 interoperability, 472, 473 JAX-RPC decision, 472–476 as JWSDP component, 268 with messaging profile, 475 profiles, 431–433 provider administration, 455, 460 providers, 429 reference implementation, 447 root in JMS, 418 services, 472 SOAP message request sent synchronously, 443–445 standalone clients, 438 summary, 476–477 uses, 268 without provider, 475 See also JAX APIs JAXP, 277–312 architecture, 278 architecture illustration, 279 bundling, 311 defined, 265, 277 development, 278 DOM and, 290–292 as JWSDP component, 268 logical architecture, 279 parsing/validating schemas, 293–294 RI, 311 SAX and, 282–287 schemaLanguage property, 294 schemaSource property, 294 summary, 311–312 uses, 268 W3C DOM package, 290 XML schemas and, 293–297 XSLT and, 301–306 See also JAX APIs JAXR, 216, 226, 479–544 API, 491–530 API abstraction level, 499 API illustration, 492 app connection sequence, 493 app to publish WSDL, 515–519 architecture, 480–482 architecture illustration, 482 Association interface, 489 BusinessLifeCycleManager interface, 492, 495, 496, 500, 539 BusinessQueryManager interface, 492, 497 capability profiles, 481–482 Classification interface, 487 ClassificationScheme interface, 489 clients, 513–514 connection properties, 493, 495 connections and, 493–494 CRUD operations and, 494–496 debugging, 507 declarative queries and, 498–530 DeclarativeQueryManager interface, 492, 539 defined, 266, 268 ebXML registry and, 533–544 ExtrinsicObject, 537 Factory pattern, 493 get-find operations and, 497–498 internal taxonomy support, 489 as JWSDP component, 268 LifeCycleManager, 494, 496, 539 mapping ebXML information model to, 544 providers, 481 QueryManager interface, 497 reference implementation, 483 RegistryObject interface, 487, 491 summary, 544 to UDDI mapping, 531–533 UDDI registry querying with, 520–523 See also JAX APIs JAXR information model, 483–491 core, illustrated, 484 inheritance relationships, 486 location, 483 logical groups of classes, 483 Organization, 483, 485 PostalAddress, 483 Service, 484 ServiceBinding, 485 SpecificationLink, 485 Users, 483 JAX-RPC, 131, 172, 313–403, 359–362 advanced, 367–393 attachments, 367–371 blocking invocation, 474 choosing, 474–475 client creation, 274 clients, 316–317 client-server interaction, 317 complex protocols, 315 compliant implementation, 313 data type mapping and, 168–169 defined, 265, 313 definitions, 316 DII, 359–362 document/literal support, 329 dynamic proxies, 362–363 handlers, 371–384 handler-specific API in, 375 HTTP authentication support, 392–393 interoperability, 393–398 J2EE and, 398–402 JAXB and, 559 JAXM decision, 472–476 JSR 153 and, 399–401 JSR-109 and, 401–402 as JWSDP component, 268 model illustration, 314 need for, 402 non-blocking invocation, 474 pass by reference and, 319 pluggability mechanism, 389–391 portability across, 320 remote object passing and, 319 RPC/encoded support, 329 runtime, 317 runtime information, 317–318 security and, 392–393 server creation, 272 service endpoint, 315 service implementation, 315 service model, 314–315 specifications, 125 stubs, 357 summary, 402 synchronous procedure invocation support, 473 uses, 268 in vendor decision, 168–169 vendor standard, 316 See also JAX APIs JAX-RPC development, 336–367 service consumption, 355–367 service definition, 336–337 service deployment, 339–341 service description, 341–355 service implementation, 337–339 steps, 336 JDOM, 308–311 builder classes, 311 class diagram, 310 classes, 309–311 defined, 308–309 DOM vs., 309 standardization, 311 for transformations, 310–311 JMS, 411–418, 703 administered objects, 414 API illustration, 413 communication, 411 conceptual model, 411 Connection, 414 ConnectionFactory, 414 Destination, 414 destinations, exposing, 475 HTTP and, 418 JAXM as interface to, 475 message consumers, 415 message producers, 415 MessageProducer, 415 messaging illustration, 415 point-to-point messaging, 412 publish-subscribe messaging, 412 receiving messages, 417 sending messages, 416–417 Session, 414 stack, 411 use, 419 vendors, 418 See also messaging JSRs JSR-95, 618 JSR-105, 636 JSR-106, 648 JSR-109, 401–402 JSR-153, 399–401 JSR-155, 658 JSR-156, 618 JSR-172, 740–741 JSR-181, 740 JSTL, 275, 771–783 advantages, 771 defined, 771 expression languages and, 771–772 implicit objects, 772, 773 reference implementation, 771 tag library descriptors (TLDs), 773–774 using, 773–774 WSDP reference implementation of, 774 JSTL tags, 774–781 absolute URI for, 776 choose, 779 core functionality, 775 database access, 776 forEach, 778–779 if, 779 internationalization, 775 JSP example using, 781–783 otherwise, 780 out, 778 parse, 776–777 parsing and searching, 774–778 set, 778 transform, 780–781 when, 779–780 XML flow control, 778–780 XML transformation, 780–781 XML-specific, 775
JaVa
   
Comments