
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the author
OK
J2EE Web Services: XML SOAP WSDL UDDI WS-I JAX-RPC JAXR SAAJ JAXP Illustrated Edition
- ISBN-100321146182
- ISBN-13978-0321146182
- EditionIllustrated
- PublisherAddison-Wesley Professional
- Publication dateJanuary 1, 2003
- LanguageEnglish
- Dimensions7 x 1.75 x 9 inches
- Print length640 pages
Editorial Reviews
From the Back Cover
“J2EE™ Web Services is written in the tradition of great books people have come to expect from author Richard Monson-Haefel. More than a complete and concise Web services reference, this essential guide is the way for J2EE developers to quickly master Web services architecture and development.”
—Floyd MarinescuAuthor, EJB Design Patterns
Director, TheServerSide.com
“Written in a straightforward and approachable style, Monson-Haefel’s latest book is a mustread for any Java developer who is serious about understanding and applying the J2EE APIs in support of Web services. By concentrating on the core technologies endorsed by the WS-I, it clearly explains why Web services will succeed in realizing the interoperability promise where previous attempts have failed.”
—James McCabeSoftware IT Architect IBM
“This is the best—and most complete—description of J2EE Web services that I’ve seen. If you’re a Java developer, you need this book.”
—David ChappellChappell & Associates
“For Java Web service developers, this book is going to be there on their desk next to their PC for easy reference. The book has it all, clear guides as to what WSDL, SAAJ, UDDI are, and how they are used in a variety of examples. Monson-Haefel has created another classic with this volume.”
—Dr. Bruce ScharlauDepartment of Computing Science
University of Aberdeen, Scotland
“Richard Monson-Haefel provides the most comprehensive analysis of J2EE Web services that I’ve seen so far to date. This book covers the core Web services technologies (XML, SOAP, WSDL, and UDDI), as well as the Java APIs for Web services (JAX-RPC, SAAJ, JAXR, JAXP, and Web Services for J2EE, version 1.1). Richard also goes into detail on issues such as fault handling, type mapping, and JAX-RPC handlers. Developers will find this book to be a very valuable reference.”
—Anne Thomas ManesResearch Director, Burton Group
Author, Web Services: A Manager’s Guide
“J2EE™ Web Services is an excellent reference and tutorial for both beginning and seasoned Web services architects and developers. This book is the first to fully cover the WS-I 1.0 Web services standards and their integration with J2EE 1.4 components. Spend time with this book, and you’ll soon master J2EE Web Services and be able to successfully use this technology to solve key business integration problems in your enterprise.”
—Tom MarrsSenior J2EE/XML/Web Services Architect
Distributed Computing Solutions, Inc.
Web services are revolutionizing the way enterprises conduct business, as they allow disparate applications to communicate and exchange business data. Now, Java 2, Enterprise Edition (J2EE) delivers a complete Web services platform. But how do you make sense of the sea of acronyms in this emerging area? Richard Monson-Haefel comes to the rescue with this essential guide for Java developers who need to understand J2EE APIs for Web services and the Web services standards.
J2EE Web Services is a comprehensive guide to developing and deploying Web services using J2EE technology. Concentrating on standards sanctioned by the Web Services Interoperability Organization (WS-I) for maximum interoperability, the author delves into Web-service standards and the J2EE 1.4 Web-service APIs and components with clear and engaging discussions.
Key topics covered include:
- XML (eXtensible Markup Language) and XML Schema
- SOAP (Simple Object Access Protocol)
- WSDL (Web Services Description Language)
- UDDI (Universal Description, Discovery, and Integration)
- JAX-RPC (Java API for XML-based RPC)
- SAAJ (SOAP with Attachments API for Java)
- JAXR (Java API for XML Registries)
- JAXP (Java API for XML Processing)
The appendices complement this wealth of information with coverage of XML regular expressions, Base 64 encoding, DTDs (document type definitions), SOAP Messages with Attachments (SwA), RCP/Encoded SOAP messaging, and references to other resources. In short, this accessible reference will give Java developers the tools they need to use J2EE technologies and APIs to integrate both enterprise applications and Web-based applications.
About the Author
Richard Monson-Haefel currently serves on the J2EE 1.4 and EJB 2.1 expert groups for the Java Community Process. He is a founder of the Apache J2EE Application Server Project (Geronimo) and a lead developer of its J2EE Web Services implementation. He assisted Sun in the development of the SCDJWS Exam. Mr. Monson-Haefel is the author of four best-selling editions of Enterprise JavaBeans, which won the 2001 JavaPRO Reader's Choice award for Best Advanced Java Book, the 1999 Java Developer Journal's Editor's Choice award for Best Java Book, and Amazon's Best of 2001 and Best of 2002 awards. He is also the coauthor of Java Message Service, which won the 2002 Java Developer Journal's Reader's Choice award for Best Java Book.
Excerpt. © Reprinted by permission. All rights reserved.
This book is sharply focused. It concentrates on only those Web services standards that are sanctioned by the Web Services Interoperability Organization's Basic Profile 1.0, because these are the only standards that have been proven in production and are explicitly required by the J2EE Web Services platform. This book also covers only those J2EE APIs and components that are specific to Web services. The truth is, the primary Web service standards (XML, SOAP, WSDL, and UDDI), as well as the J2EE Web Services APIs (JAX-RPC, SAAJ, JAXR, and JAXP), are pretty complicated, and you are going to need to spend time studying this book in order to master them. That said, I think you will find this book to be a pretty easy read and an excellent desk-side reference.
Are Web Services Important?
Revolutionary technologies tend to take the media by storm and then eventually become ubiquitous. The World Wide Web, Java technology, and XML seem to be everywhere, don't they? Each of these technologies saw rapid adoption and today are considered essential ingredients of enterprise-level computing.
First introduced in 2000, Web services is also a revolutionary technology. It was introduced with a great deal of media hyperbole, but has since settled down to business and is just beginning to enjoy rapid adoption by the developer community. If you did not get involved in Web services before 2003, don't worry; you didn't miss much. The first two years should be considered experimental, the beta period of Web services. It was a time when the Web services community defined a cornucopia of specifications and discovered numerous real-world problems when attempting to make those specifications work in production. The year 2003, however, marks the beginning of hyperactive growth in Web services. If you are just jumping on board the Web services bandwagon, your timing couldn't be better. Consider yourself a pioneer of a revolutionary technology, and prepare to immerse yourself in one of the most important innovations in the history of distributed computing.
What Do I Need to Know to Read This Book?
This book is written for Java developers who want to learn about Web services and related APIs defined by J2EE 1.4. It is more of a reference than a tutorial, but many of the chapters have a tutorial-like style. This book is designed to teach J2EE Web Services and is more than a reference.
You must have experience in the Java programming language to read this book. If you don't, you'll find all the material after Chapter 9 difficult to understand. In addition, you should have some basic understanding of the J2EE platform. This book covers only the Web services functionality of J2EE, not other J2EE APIs or technologies.
To read this book, you do not need to know anything about XML, SOAP, WSDL, UDDI, or any of the J2EE Web Services APIs (JAX-RPC, SAAJ, JAXR, or JAXP). I've covered these topics in enough detail that I'm confident even a complete novice will be able to understand them.
What Does This Book Cover?
This book focuses only on the Web services standards and the J2EE 1.4 Web Services APIs and components—all other topics are deferred to other specialized books or to more general books. Specifically this book covers the following Web service standards:
- XML 1.0
- SOAP 1.1
- SOAP Messages with Attachments
- WSDL 1.1
- UDDI 2.0
- WS-I Basic Profile 1.0
The Web services standards take up the first third of the book, Chapters 1-8, while the rest of the book focuses on the J2EE Web Services APIs:
- JAX-RPC 1.1
- SAAJ 1.2
- JAXR 1.0
- JAXP 1.2
This book covers the use of the Web Services APIs as specified in J2EE 1.4 because version 1.4 is the first Java platform that fully embraces the Web service paradigm.
How Is This Book Organized?
The book is designed as a reference and a tutorial about J2EE Web Services. The chapters tend to build on one another. Once you read Part I on XML, you are prepared to read Part II on SOAP and WSDL. Similarly, before you read Part IV on JAX-RPC (Java API for XML-based RPC) you should understand XML, SOAP, and WSDL. Once you have read this book and understand J2EE Web services, it should continue to be very helpful as a reference. You can use it in your everyday work to look up information about Web service standards and the J2EE 1.4 Web Services APIs.
The book is divided into seven parts, each of which is made up of two or more chapters about a specific Web service standard or J2EE API, plus one introductory chapter. Each part begins with an introduction page that tells you how to read the chapters, and specifically which parts you really must read and which parts are optional reference material.
Every chapter is organized into four to five levels of headings labeled with a hierarchical dot notation. This labeling scheme is used in many specifications today, and is particularly useful for a reference book because it makes it much easier to discuss certain portions of the book with your colleagues. The book also includes appendices that cover important topics like XML regular expressions, Base64 encoding, DTDs, SOAP Messages with Attachments, and RPC/Encoded messaging.
The following outline of the book includes a short description of each chapter.
- Chapter 1 summarizes the topics covered by this book, presents a brief architectural overview of J2EE 1.4, and provides abstracts about XML, SOAP, WSDL, UDDI, WS-I, JAX-RPC, SAAJ, JAXR, and JAXP.
Chapters 2 and 3 cover in detail XML 1.0 and the XML Schema standard defined by the World Wide Web Consortium (W3C). This part assumes you have no prior knowledge of XML and explains the topic from the ground up.
- Chapter 2 covers XML and XML namespaces.
- Chapter 3 provides both basic and advanced coverage of the W3C's XML Schema standard.
Chapters 4 and 5 gently introduce SOAP 1.1 and WSDL 1.1. This part assumes you are already familiar with XML, XML namespaces, and XML schema as described in Part I.
- Chapter 4 explains the structure of SOAP messages, terminology, and processing rules.
- Chapter 5 covers WSDL 1.1.
Chapters 6 through 8 provide a reference to the UDDI 2.0 data types, and to query and publishing methods. This part of the book assumes you are already familiar with XML, XML schema, SOAP, and WSDL as covered in Parts I and II.
- Chapter 6 provides a gentle introduction to the UDDI data types.
- Chapters 7 and 8 are pure reference material; they provide schema information about the UDDI Inquiry and Publishing APIs.
Chapters 9 through 15 provide very detailed coverage of the entire Java API for XML-based RPC (JAX-RPC), version 1.1. This part assumes you already know XML, XML schema, SOAP, and WSDL.
- Chapter 9 introduces various features of JAX-RPC.
- Chapter 10 covers JAX-RPC service endpoints (JSEs) and their relationship to the servlet container system.
- Chapter 11 covers EJB endpoints, EJB stateless session beans that act as Web services.
- Chapter 13 covers the use of SAAJ 1.2.
- Chapter 14 describes the use and configuration of message handlers, which are used to pre- and post-process SOAP messages.
- Chapter 15 covers Java-to-WSDL and Java-to-XML mapping, which describes how XML and WSDL types are translated into Java code.
Chapters 16 through 19 cover in detail the Java API for XML Registries (JAXR), version 1.0. Specifically they explain how to use the JAXR API to publish and query information in a UDDI registry.
- Chapter 16 gives you an overview of JAXR and helps you prepare for subsequent chapters.
- Chapter 17 and 18 present a detailed study of the JAXR domain objects that are mapped to UDDI data types.
- Chapter 19 covers the JAXR Inquiry and Publishing APIs, which can be used to query, add, and update information in a UDDI registry.
Chapters 20 and 21 serve as a primer on the Java API for XML Processing, version 1.2. Specifically they cover the use of SAX2 and DOM 2.
- Chapter 20 covers SAX2, the event-driven XML parser API.
- Chapter 21 covers the DOM 2 XML parser API.
Chapters 22 through 24 provide a detailed study of the XML deployment descriptors used in J2EE Web Services, as well as an overview of JAR packaging and deployment.
- Chapter 22 covers general J2EE deployment descriptors used for deploying JSEs and EJB endpoints.
- Chapter 23 covers the Web service-specific deployment descriptors as defined by the Web Services for J2EE (WS-J2EE) specification.
- Chapter 24 covers the JAX-RPC mapping file, which determines how WSDL and XML types are mapped to Java interfaces and Java beans.
What Doesn't This Book Cover?
As I said at the start of this preface, this book focuses only on standard Web service technologies and the core J2EE 1.4 Web Services APIs. There is simply too much material in this book to allow for coverage of other topics.
Non-Web Service Aspects of the J2EE Platform
Although this book provides detailed coverage of the J2EE 1.4 Web Services APIs, as well as an overview of servlets and EJBs, J2EE is too large a topic to cover comprehensively. It's expected that you have some general knowledge about J2EE or that you will seek to learn more about the J2EE platform and APIs unrelated to Web services from other resources.
The author of this book has written two other J2EE books: Enterprise JavaBeans (Fourth Edition, O'Reilly 2004) and Java Message Service (with David A. Chappell, O'Reilly, 2000).
Vendor-Specific Configuration and Administration
There is a wide variety of J2EE platforms for you to choose from: BEA's WebLogic, IBM's WebSphere, Sun Microsystems' Sun ONE, Oracle9i Application Server, IONA's Application Server Platform, Apple WebObjects, Borland Enterprise Server, Pramati's Pramati Server, the Apache J2EE, jBoss and ObjectWeb open source projects, and many others. While each of these platforms adheres to the J2EE specification, they all specify very different procedures and interfaces for installing, configuring, and deploying applications. Because the administration of each J2EE platform is different, this book doesn't attempt to cover installation, configuration, or deployment except in terms of standard J2EE requirements. To learn about vendor-specific administration and configuration requirements, please consult the vendor's documentation.
Other Web Service "Standards"
There are a number of new Web service standards that have been proposed by various organizations (W3C, OASIS, ebXML, and IBM/Microsoft ) including things like DISCO, WSCI, BTP, WS-Security, DIME, etc. Many of these proposed standards actually conflict or compete with each other. It's unclear which of them will become Web service standards and which of them will die on the vine, so this book covers only the core, WS-I Approved Web service protocols.
0321146182P10062003
Product details
- Publisher : Addison-Wesley Professional; Illustrated edition (January 1, 2003)
- Language : English
- Paperback : 640 pages
- ISBN-10 : 0321146182
- ISBN-13 : 978-0321146182
- Item Weight : 2.9 pounds
- Dimensions : 7 x 1.75 x 9 inches
- Best Sellers Rank: #6,911,532 in Books (See Top 100 in Books)
- #267 in XML Programming (Books)
- #2,065 in Java Programming
- #6,336 in Web Design (Books)
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read book recommendations and more.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on January 4, 2016On time, very good product as promised.
- Reviewed in the United States on January 19, 2009This book is well-written which makes it a great book to learn from. The explanations and examples are clear and easy to understand. In addition, it's well organized and I'm sure I'll be using it as a reference book as well.
- Reviewed in the United States on July 5, 2015its ok
- Reviewed in the United States on November 10, 2015Excelent
- Reviewed in the United States on November 22, 2013This is a very nice books and the topics are explained in properly ... neither too long nor too short.
- Reviewed in the United States on May 13, 2007just started reading it.easy to read ,has a good flow,clear explanation.i think it will be a good resource for my current web services project and if i take the certification exam too.
- Reviewed in the United States on November 24, 2005Warning: this book is only a rumination on the J2EE web services specification, fat on "theory" and with absolutely no real code examples you can run and play with to learn. Unless you are someone who can learn playing tennis looking at people playing it, or become a musician by listening to music, I doubt you can become a web services developer by just reading words and code snippets.
As the author says: "this book doesn't attempt to cover installation, configuration, or deployment except in terms of standard J2EE requirements". I do believe that a decent tech book must have running code to support its explanations and support its value and usefulness. With this text Monson-Haefel is well on his way to win the "Most useless java book of the year" award.
- Reviewed in the United States on August 1, 2006It's been enduring pain when I tested the code examples and it did'nt work on JBoss. The content looks a bit old and needs an update.
Top reviews from other countries
-
SunriseReviewed in Germany on September 8, 2008
5.0 out of 5 stars Das Referenzwerk für J2EE 1.4 Web-Services
Dies ist KEIN reines Java-Buch, denn es werden viele Standards erklärt, die nicht von Sun Microsystems stammen (XML, XSD, SOAP, WSDL, UDDI, SwA). Das Verständnis dieser Standards ist aber die Voraussetzung, um die Funktionsweise von Web-Services nachvollziehen zu können. Den Anfang des Buches bildet eine kurze, aber präzise Einführung in XML und XML Schema. Danach geht es weiter mit SOAP, was noch relativ einfach nachzuvollziehen ist. Mit WSDL wird es dagegen schon ein wenig schwieriger, und es empfiehlt sich, manche Abschnitte mehrmals zu lesen. Mit ein wenig Geduld ist das WSDL-Kapitel aber durchaus zu meistern. Wer das anschließende Kapitel liest bzw. zu lesen versucht, wird jedoch seinen Augen nicht trauen, denn UDDI ist der absolute API-Overkill und äußerst schwer zu verstehen. UDDI ist extrem komplex und umständlich aufgebaut, und das Kapitel wird dem Leser garantiert keine Freude bereiten. SOAP und WSDL waren ja schon nicht gerade spannend, aber UDDI ist schlichtweg eine Zumutung. Im Grunde genommen bestehen die Standards SOAP, WSDL und UDDI aus nichts anderem als aus einer schier endlosen Aneinanderreihung von Vorschriften, wie XML-Dokumente mitsamt ihren Namensräumen aufgebaut werden müssen bzw. von Regeln, was bei diesen XML-Dokumenten auf gar keinen Fall gemacht werden darf (es ist immer wieder erstaunlich, wieviele Namensräume man in einem WS-fähigen XML-Dokument unterbringen muß, und was man dabei alles falsch machen kann). Auf Seite 271 beginnt mit JAX-RPC das Herzstück des Buches, und hier fühlt sich der Java-Entwickler endlich wieder auf sicherem Terrain. Die JAX-RPC-Kapitel inklusive SAAJ und Message-Handler lesen sich flüssig & informativ, denn man lernt dabei eine ganze Menge. Allerdings muß man die Kapitel über SOAP und WSDL zwingend vorher gelesen und verstanden haben, ansonsten wird man mit JAX-RPC nicht zurechtkommen. Anschließend folgt mit JAXR der zweite Alptraum des Buches, denn JAXR bildet die J2EE-API für den Zugriff auf UDDI-Registries. JAXR ist annähernd so umständlich wie UDDI selbst, und man benötigt eine Menge Geduld und Zeit, um diese Technologien zu durchschauen. Wenn man bedenkt, daß sich UDDI (und damit auch JAXR) nie richtig in der Industrie durchsetzen konnten und heutzutage kaum noch im großen Stil eingesetzt werden, dann muß man sich das Lesen dieser Kapitel nicht antun, außer, man bereitet sich auf die Prüfung zum "Sun Certified Developer for Java Web Services" vor, aber auch dafür benötigt man nur oberflächliches Wissen von UDDI und JAXR, denn diese beiden Standards sind so komplex, daß man daraus locker eine eigene Prüfung machen könnte, die aber kein Mensch absolvieren würde, eben weil sich UDDI nie so richtig auf dem Markt behaupten konnte. Nach JAXR wird es mit JAXP aber wieder interessanter, denn in diesem Teil des Buches werden SAX2 und DOM Level 2 erklärt (gefehlt hat mir dagegen ein Abschnitt über XSLT). Die Thematik XML-Parsing ist ziemlich umfangreich, so daß es in diesem Buch nur angerissen werden kann, aber aufschlußreich ist das Kapitel auf jeden Fall. Anschließend geht es weiter mit dem J2EE Deployment, und der Autor liefert uns zunächst eine praxisbezogene Aufbereitung für den Einsatz von WSDL-Dokumenten, was ich als äußerst informativ und lesenswert empfand. Natürlich werden im Kapitel über Deployment auch die Elemente des Deployment Descriptors erklärt, aber im Gegensatz zu den unzähligen XML-Regeln aus dem ersten Drittel des Buches waren die Deployment Descriptoren gar nicht mal so langweilig wie erwartet. Das letzte Kapitel behandelt JAX-RPC Mapping-Files, und zum Schluß gibt es noch einen Anhang, u.a. mit diversen Zusatzinformationen zu Base64 Encoding, SOAP und SAAJ-Attachments.
Alles in allem hat der Autor Richard Monson-Haefel mit diesem Buch eine Pionierarbeit abgeliefert, die zudem noch hervorragend geschrieben wurde. Daß die vielen reinen XML-lastigen Kapitel zu SOAP, WSDL und UDDI so zäh geworden sind, liegt dabei nicht am Autor, denn Richard Monson-Haefel hat sich UDDI & Co. ja schließlich nicht ausgedacht, er hat diese Standards lediglich dokumentiert, und das Ergebnis kann sich wirklich sehen lassen, auch wenn einige Kapitel die Geduld des Lesers manchmal über Gebühr strapazieren, aber XML-Regeln sind nun mal keine allzu aufregende Angelegenheit. Vermißt habe ich lediglich Kapitel über JAXB, JAXM & Web-Service-Security (und, wie oben schon erwähnt, zu XSLT).
Während Technologien wie EJBs und Servlets dazu dienen, Business-Logik auf dem Server abzubilden, dienen Web-Services "lediglich" dazu, eine Infrastruktur zur Verfügung zu stellen, um heterogene Systeme (d.h. Client und Server sind in unterschiedlichen Programmiersprachen erstellt) miteinander zu verbinden, um dadurch die Interoperabilität zu erhöhen. Java Web-Services bestehen aus mehr Akrynomen und Regeln als jede andere mir bekannte Java-Technologie, und ein wenig enttäuschend dabei ist, daß bei soviel Komplexität unterm Strich nur so wenig dabei herausgekommen ist, eben eine Infrastruktur zum Datenaustausch bzw. zur Validierung, Transformation und zum Parsen von XML-Daten. Echte Business-Logik, um die operativen Prozesse eines Unternehmens abzubilden, werden dagegen nicht mit Web-Services realisiert, lediglich der Zugriff darauf wird über Web-Services standardisiert. Beim Lesen des Buches habe ich mich oft gefragt, ob man die ganze WS-Thematik nicht ein wenig einfacher hätte machen können, zumindestens UDDI hätte man etwas Programmierer-freundlicher gestalten können. Nichtsdestotrotz ist Richard Monson-Haefels Buch ein Meilenstein im Web-Service-Bereich, denn der Autor kann nicht nur hervorragend schreiben und erklären, er hat auch die richtige Balance zwischen Texten und Beispiel-Code gefunden. "J2EE Web Services" ist nicht umsonst einer DER Klassiker für J2EE-Entwickler.
- Gurpiar BassiReviewed in the United Kingdom on July 3, 2013
5.0 out of 5 stars reccomended for any web service enthusiast
This book was published a long time ago. However much of the concepts are still valid today. It very useful as a reference.
- Martin AndersonReviewed in the United Kingdom on December 8, 2004
3.0 out of 5 stars Oh no it isn't......
Rather than a guide to Web Services, this book is more of a reference to the technologies that comprise the Web Services specification. In depth and detailed dissections of the Java APIs for XML (SAX and DOM2), JAX-RPC, JAXR, SAAJ, UDDI and JAXP are welcome as are the discussions of the structures of XML, schemas and WSDL.
However, anyone looking for a primer into Web Services would be better served by another book, as this one has almost no information about the actual creation of services are examples to show how this may be achieved. This book does not even cover Apache Axis let alone implementations by BEA, IBM or Oracle, and for a book that bills itself as the "Ultimate Guide" that is a cardinal sin. This is nothing more than a reference book for those already involved in writing Web Services. A better choice for beginners would be "Beginnning Java Web Services" [Wrox](although that is better not the best).
This book suffers from an erroneous title. As the "The Ultimate Guide to Web Service API's" it would have been accurate and superbly comprehensive, but as a guide to Web Services it falls far short.