amazon.com:
This is the eBook version of the printed book.
Expert Solutions and State-of-the-Art Code Examples SOA Using Java(TM) Web Services is a hands-on guide to implementing Web services and Service Oriented Architecture (SOA) with today-s Java EE 5 and Java SE 6 platforms. Author Mark Hansen presents in explicit detail the information that enterprise developers and architects need to succeed, from best-practice design techniques to state-of-the-art code samples.
Hansen covers creating, deploying, and invoking Web services that can be composed into loosely coupled SOA applications. He begins by reviewing the -big picture,- including the challenges of Java-based SOA development and the limitations of traditional approaches. Next, he systematically introduces the latest Java Web Services (JWS) APIs and walks through creating Web services that integrate into a comprehensive SOA solution. Finally, he shows how application frameworks based on JWS can streamline the entire SOA development process and introduces one such framework: SOA-J.
The book
- Introduces practical techniques for managing the complexity of Web services and SOA, including best-practice design examples
- Offers hard-won insights into building effective SOA applications with Java Web Services
- Illuminates recent major JWS improvements-including two full chapters on JAX-WS 2.0
- Thoroughly explains SOA integration using WSDL, SOAP, Java/XML mapping, and JAXB 2.0 data binding
- Walks step by step through packaging and deploying Web services components on Java EE 5 with JSR-181 (WS-Metadata 2.0) and JSR-109
- Includes specific code solutions for many development issues, from publishing REST endpoints to consuming SOAP services with WSDL
- Presents a complete case study using the JWS APIs, together with an Ajax front end, to build a SOA application integrating Amazon, Yahoo Shopping, and eBay
- Contains hundreds of code samples-all tested with the GlassFish Java EE 5 reference implementation-that are downloadable from the companion Web site, http://soabook.com.
amazon.com:
Expert Solutions and State-of-the-Art Code ExamplesSOA Using Java? Web Services is a hands-on guide to implementing Web services and Service Oriented Architecture (SOA) with today’s Java EE 5 and Java SE 6 platforms. Author Mark Hansen presents in explicit detail the information that enterprise developers and architects need to succeed, from best-practice design techniques to state-of-the-art code samples.
Hansen covers creating, deploying, and invoking Web services that can be composed into loosely coupled SOA applications. He begins by reviewing the ?big picture,? including the challenges of Java-based SOA development and the limitations of traditional approaches. Next, he systematically introduces the latest Java Web Services (JWS) APIs and walks through creating Web services that integrate into a comprehensive SOA solution. Finally, he shows how application frameworks based on JWS can streamline the entire SOA development process and introduces one such framework: SOA-J.
The book
- Introduces practical techniques for managing the complexity of Web services and SOA, including best-practice design examples
- Offers hard-won insights into building effective SOA applications with Java Web Services
- Illuminates recent major JWS improvements–including two full chapters on JAX-WS 2.0
- Thoroughly explains SOA integration using WSDL, SOAP, Java/XML mapping, and JAXB 2.0 data binding
- Walks step by step through packaging and deploying Web services components on Java EE 5 with JSR-181 (WS-Metadata 2.0) and JSR-109
- Includes specific code solutions for many development issues, from publishing REST endpoints to consuming SOAP services with WSDL
- Presents a complete case study using the JWS APIs, together with an Ajax front end, to build a SOA application integrating Amazon, Yahoo Shopping, and eBay
- Contains hundreds of code samples–all tested with the GlassFish Java EE 5 reference implementation–that are downloadable from the companion Web site, http://soabook.com.
Foreword
Preface Acknowledgments
About the Author Chapter 1: Service-Oriented Architecture with Java Web Services
Chapter 2: An Overview of Java Web Services
Chapter 3: Basic SOA Using REST
Chapter 4: The Role of WSDL, SOAP, and Java/XML Mapping in SOA
Chapter 5: The JAXB 2.0 Data Binding
Chapter 6: JAX-WS–Client-Side Development
Chapter 7: JAX-WS 2.0–Server-Side Development
Chapter 8: Packaging and Deployment of SOA Components (JSR-181 and JSR-109)
Chapter 9: SOAShopper: Integrating eBay, Amazon, and Yahoo! Shopping
Chapter 10: Ajax and Java Web Services
Chapter 11: WSDL-Centric Java Web Services with SOA-J
Appendix A: Java, XML, and Web Services Standards Used in This Book
Appendix B: Software Configuration Guide
Appendix C: Namespace
Prefixes
Glossary
References
Index
amazon.com:
Expert Solutions and State-of-the-Art Code Examples
SOA Using Java™ Web Services is a hands-on guide to implementing Web services and Service Oriented Architecture (SOA) with today’s Java EE 5 and Java SE 6 platforms. Author Mark Hansen presents in explicit detail the information that enterprise developers and architects need to succeed, from best-practice design techniques to state-of-the-art code samples.
Hansen covers creating, deploying, and invoking Web services that can be composed into loosely coupled SOA applications. He begins by reviewing the “big picture,” including the challenges of Java-based SOA development and the limitations of traditional approaches. Next, he systematically introduces the latest Java Web Services (JWS) APIs and walks through creating Web services that integrate into a comprehensive SOA solution. Finally, he shows how application frameworks based on JWS can streamline the entire SOA development process and introduces one such framework: SOA-J.
The book
- Introduces practical techniques for managing the complexity of Web services and SOA, including best-practice design examples
- Offers hard-won insights into building effective SOA applications with Java Web Services
- Illuminates recent major JWS improvements—including two full chapters on JAX-WS 2.0
- Thoroughly explains SOA integration using WSDL, SOAP, Java/XML mapping, and JAXB 2.0 data binding
- Walks step by step through packaging and deploying Web services components on Java EE 5 with JSR-181 (WS-Metadata 2.0) and JSR-109
- Includes specific code solutions for many development issues, from publishing REST endpoints to consuming SOAP services with WSDL
- Presents a complete case study using the JWS APIs, together with an Ajax front end, to build a SOA application integrating Amazon, Yahoo Shopping, and eBay
- Contains hundreds of code samples—all tested with the GlassFish Java EE 5 reference implementation—that are downloadable from the companion Web site
amazon.com:
SOA Using Java™ Web Services is a hands-on guide to implementing Web services and Service Oriented Architecture (SOA) with today’s Java EE platform, SOA application frameworks, and the advanced GlassFish application server. Author Mark Hansen presents in explicit detail the information that enterprise developers and architects need to succeed, from best-practice design techniques to state-of-the-art code samples.
Hansen covers creating, deploying, and invoking Web services that can be composed into loosely coupled SOA applications. He begins by reviewing the "big picture," including the challenges of Java-based SOA development and the limitations of traditional approaches. Next, he systematically introduces the latest Java EE 5 Web Services APIs and walks through creating Web services that integrate into a comprehensive SOA solution. Finally, he shows how application frameworks can streamline the entire SOA development process and introduces one such framework: SOA-J.
The book
- Introduces practical techniques for managing the complexity of Web services and SOA, including best-practice design examples
- Offers hard-won insights into building effective SOA applications with Java Web Services (JWS)
- Illuminates recent major JWS improvements--including two full chapters on JAX-WS 2.0
- Thoroughly explains SOA integration using WSDL, SOAP, Java/XML mapping, and JAXB 2.0 data binding
- Walks step by step through packaging and deploying components with JSR-181 (WSMetadata 2.0) and JSR-109
- Includes specific code solutions for many development issues, from publishing REST endpoints to consuming services without WSDL
- Presents a complete case study in non-disruptive SOA deployment using SAP R/3
The book contains hundreds of code samples, all tested with GlassFish and downloadable from the companion Web site.
Does a good job explaining a complex topic
30 Aug 2008 @ amazon.com
Java Web Services and SOA are difficult to learn. It is not the kind of hard that learning partial differential equations is, where once you have a concept down you can solve any problem of that type. It is a different kind of hard, the kind of hard that comes with solving a distributed computing problem. After all, that is what SOA and web services cover. Thus given a spider-web of a problem and spider-web of tools to solve it, you can’t expect a turn-the-crank solution to your problems. The author does do the best job I’ve seen of making sense of the programming part of SOA.
This is not a book that covers the concepts and design philosophy behind SOA. For a good introduction to SOA from a Java perspective I recommend Service Oriented Architecture with Java. This is a great book for the Java developer who already understands the concepts of SOA and wants to learn how to design Web Services and implement SOA from a Java perspective.
Chapters 1 and 2 review the Java Web Services (JWS) standards in detail and describe how they improve on the previous set of JWS standards. Chapters 3 through 10 focus on writing code. To really understand the power and ease of use of the new Java Web Services you must write code, and that is primarily what this book is about. Those eight chapters are packed with code examples showing you how to best take advantage of the powerful fetures, avoid some of the pitfalls, and work around the limitations. Chapter 11 looks to the future and offers some ideas, along with a prototpe implementation for a WSDL-centric approach to creating Web Services that might further improve JWS as a platform for SOA.
The book assumes you already have a working knowledge of Java and a basic understanding of XML and XML Schema. You don’t need to know much about SOAP or WSDL to begin here.However, you will probably find additional references on WSDL helpful if you want to firm your grasp on some the Web Services basics. The book helps out here by offering its own suggestions for books and websites that have been pretty helpful. The part of Java that you must know in advanced is specifically J2SE 5.0 and the Java language extensions generics and annotations.
Finally, be assured that the author will not try to convince you that Java Web Services is easy. He basically sums up the five stages of grief when dealing with JWS
1. Denial - It’s simple Object Access Protocol, right?
2. Over involvement - OK I’ll read teh SOAP, WSDL, WS-I BP, JAX-RPC, SAAJ, JAX-P specs.
3. Anger - I can’t believe they made this so hard!
4. Guilt - Everyone else is using Web Services, it must just be that I’m missing something.
5. Acceptance - It is what it is, Web Services aren’t simple or easy.
Expect to take some time in working through this book. It won’t just come to you overnight.
The author gets it wrong
12 Apr 2008 @ amazon.com
This book is about how to create web-services using JAX-WS. Unfortunately, JAX-WS perpetuates the java-first RPC-style of web-service development. According to Thomas Erl, this violates several of the principles of service orientation and, as a result, these type of web-services do not belong in a SOA. The amazing thing is that the author acknowledges this but still devotes most of the book to doing it the wrong way.
While you can develop WSDL-first document-style web services with JAX-WS, it is not its primary mode of operation. There are several other very good frameworks which which encourage best practices and are generally more appropriate for web-service development in Java. My personal favorite is Spring Web Services.
Kool-Aid Has Been Drunk, But That’s The Point
11 Apr 2008 @ amazon.com
Mark employs a very pragmatic style and approach to the chaos of this topic that I found refreshing. This stuff isn’t easy; it is what it is. He makes a point of claiming that he hasn’t drunk the Kool-Aid, but I think the value of this book is that he has drunk the Kool-Aid of Java-focused web services in their present form. That is not something to be apologetic about, it is a perspective that automatically filters the scope of the book into a manageable piece of prose. To try to articulate the real value of REST and resource-oriented approaches, or the .NET stack, or even spending more time justifying the vision would be to imperil more trees and confuse the message.
He has also appropriately left UDDI out of the discussion. Again, a suitable approach. I call bollocks on his reasons for leaving it out though. It is left out because it deserves to be left out. If you fail to ignore it, you do so at your own peril. :)
This book is for people who want to understand a particular technology stack and to understand it well. There are lots of code examples and pointers to further study. I applaud Mark for staying focused and distilling a dense set of topics in an approachable, useful manner.
Good but not for everyone
09 Feb 2008 @ amazon.com
This book has lots of great information on implementing JAX-WS web services. It skips the basics about web services (which I think is a good thing). Unfortunately it also skips some details later - some questions I had were answered by downloading the examples and reading through those, but they weren’t called out in the text. The book also focuses a lot on code-first (wrapping existing code in web services) rather than WSDL-first development; and the author tends to focus on a provided approach to web services of his own, which I could have done without.
But overall the book provides some great information on JAX-WS, particularly the features that are more advanced and harder to find examples of using. Definitely not an introductory book, but I’d recommend to people who like to understand how things work more than just knowing how to use them.
Valuable topics, terrible writing
26 Dec 2007 @ amazon.com
I couldn’t wait to dive into this book, as it covered precisely the topics that are sorely lacking in other books on the subject. For instance, the book covers topics related specifically to JEE 5. It’s also got a chapter on REST, which other current SOA books bizarrely ignore.
But there’s the rub: the writing logic is incredibly "upside down". The author chokes you with details first, then, much later, gives the context into which the details should fit. Sometimes he even neglects to give any context at all, and you’re left with a load of low-level details for which you have no use.
The REST chapter is a case in point, instead of explaining REST or elaborating the position of REST vis-a-vis the broader spectrum of Web Services, which he said in the preface that he’d do, the chapter starts with an out-of-place primer on XML and XSLT and then moves to implementation examples of doing REST with and without Java Web Services. The end.
Also, the book assumes you already know all you need to know about SOA and Web Services, and focuses far too closely on the the implementation using the new tools of Java Web Services. While that’s the title of the book, the back cover makes you think that it covers issues broader than implementation details, by saying things like "practical techniques for managing the complexity of web services and SOA, including best-practice design examples".
In general I found that the information is badly organized, the sub-topics in a chapter don’t build up well to the chapter’s objective, the diagrams are confusing, and, usually, you don’t get what the author is trying to achieve from the flood of information he provides.
Outstanding ! - but not simple
23 Dec 2007 @ amazon.com
I’m not sure what I like best about this work. Is it the author’s ability to clearly explain the details of SOAP and the improved Sun implementation of Web services without becoming tedious ? Is it the fact the his code examples work ? Is it his provided Maven build scripts or his attentive support on the book’s Web site ?
I guess it’s all of those things. The author provides a lot of detail about what’s happening under the covers and illustrates what he is saying with real XML and code and build scripts. The material is dense but written in a readable style.
Hansen points out that developing Web services is not easy, and that’s the truth, so you should not buy this book if you are hoping to pick up a new skill in a week. If your goal is to master the subject, however, I have never seen a better single starting point than this book and its collection of supporting resources.
I’d like to take the opportunity to recognize the author for contributing what is in my view an exemplary piece of work in the software development field. If only more books were created this way ! Thanks.
A good introduction to new Java APIs
11 Nov 2007 @ amazon.com
Gives a solid background for understanding how to use the latest Java web services APIs. This seems to be one of the only books to date with any coverage of JAX-WS 2.0, and this provides thorough coverage of how to use the APIs in a number of different ways. It is probably best used by someone who already understands the basic concepts of web services and SOAP.
A good start
09 Oct 2007 @ amazon.com
It is a good start to someone who want to know about SOA ans Web Services, I high recommend it.
A Definitive Reference for Java Web Services and SOA
31 Aug 2007 @ amazon.com
I work in a company, which lost its largest client because it delivered
a large Java application with poor usage of SOA techniques. Having worked
on that project, I know how difficult it can get when there are 18
engines talking to each other through XML’s !
I wish our company had had this book to guide us during that project.
Although not an easy text, reading this book has been a pleasure,
because it offers clear and practical advice for working with
the often overly complex SOA technology standards for Java (e.g.,
JAX-WS, JAXB).
The book has lots of examples, starting with simple REST services and
progressing to more complex SOAP/WSDL and JAXB illustrations, including a
"SOAShopper" tool that integrates shopping across eBay, Yahoo, and Amazon.
For me, the book’s pluses are: the speed at which I
could get started with web services; the forward-looking approach
based on both SOAP and RESTful API’s; the detailed coverage of JAXB;
and the entire concept of binding rather than mapping for Java/XML
translation.
Chapter 6 and 7 deal with the JAX-WS both client side and server side.
The author describes SOA architecture and concepts of WS with
sufficient detail and on the other he provides granular examples to
develop and deploy lots of examples. I think this combination of high
level architecture and detailed examples distinguished this book from
any other SOA/Web Services text that I’ve seen.
Chapter 8 clarifies packaging issues in detail; a very comprehensive
effort that deals with most of the situations a software developer is
likely to encounter in practice!
At the end of the book, an experimental open source framework, called
SOA-J, is introduced to demonstrate the an alternative approach to SOA
using Java. Instead of arguing towards replacing Web Services, the author
tries to stimulate thought over extending the capabilities in Chapter 11.
Excellent content along with ample illustrations and explanations make
it a very useful book.
I have suggested that my corporate library to get hold of some copies of
the book!
A Definitive Reference for Java Web Services and SOA
31 Aug 2007 @ amazon.com
I work in a company, which lost its largest client because it delivered
a large Java application with poor usage of SOA techniques. Having worked
on that project, I know how difficult it can get when there are 18
engines talking to each other through XML’s !
I wish our company had had this book to guide us during that project.
Although not an easy text, reading this book has been a pleasure,
because it offers clear and practical advice for working with
the often overly complex SOA technology standards for Java (e.g.,
JAX-WS, JAXB).
The book has lots of examples, starting with simple REST services and
progressing to more complex SOAP/WSDL and JAXB illustrations, including a
"SOAShopper" tool that integrates shopping across eBay, Yahoo, and Amazon.
For me, the book’s pluses are: the speed at which I
could get started with web services; the forward-looking approach
based on both SOAP and RESTful API’s; the detailed coverage of JAXB;
and the entire concept of binding rather than mapping for Java/XML
translation.
Chapter 6 and 7 deal with the JAX-WS both client side and server side.
The author describes SOA architecture and concepts of WS with
sufficient detail and on the other he provides granular examples to
develop and deploy lots of examples. I think this combination of high
level architecture and detailed examples distinguished this book from
any other SOA/Web Services text that I’ve seen.
Chapter 8 clarifies packaging issues in detail; a very comprehensive
effort that deals with most of the situations a software developer is
likely to encounter in practice!
At the end of the book, an experimental open source framework, called
SOA-J, is introduced to demonstrate the an alternative approach to SOA
using Java. Instead of arguing towards replacing Web Services, the author
tries to stimulate thought over extending the capabilities in Chapter 11.
Excellent content along with ample illustrations and explanations make
it a very useful book.
I have suggested that my corporate library to get hold of some copies of
the book!
Got us started quickly
23 Aug 2007 @ amazon.com
A colleague and I were already experienced Java developers. This book greatly helped getting us jump started into web services. I bought a couple similar books at the same time, but this is the one I used most.
That said, acronyms were over-used. By page 70, my head was swimming trying to remember the difference between an SEI and an EIS. If you are going to abbreviate that many things, create a table to decode them or at least include them in the glossary.
The author says it is hard...and proves it
01 Aug 2007 @ amazon.com
Mark Hansen says SOA using Java Web Services is hard and he seems to do his best to prove it.
The author states in the Preface, "...it is inevitable that I will have disappointed some readers because a particular topic of interest to them isn’t covered." For me, that wasn’t the problem. The problem was there was not enough grounding in what I already know to give me enough lift to understand the text.
I couldn’t really follow most of the book. Reading this book, my concentration collapsed under a borage of acronyms and complex notations. I don’t think this book is for someone who is not already nearly an expert on the subject. Too many times I saw phrases like "my purpose is not to write a detailed tutorial for..." -- leaving me wondering what background information he would provide.
I cannot say this is a bad book. I can only say I didn’t get much out of it and that most developers would be challenged themselves. I am not an expert in SOA or Web Services, but I have been a Java developer more than six years and a software engineer for more than 20.
Despite being a book about Java Web Services, there is really not very much Java in the book. It’s mostly dense text with XML examples.
The author says it is hard...and proves it
01 Aug 2007 @ amazon.com
Mark Hansen says SOA using Java Web Services is hard and he seems to do his best to prove it.
The author states in the Preface, "...it is inevitable that I will have disappointed some readers because a particular topic of interest to them isn’t covered." For me, that wasn’t the problem. The problem was there was not enough grounding in what I already know to give me enough lift to understand the text.
I couldn’t really follow most of the book. Reading this book, my concentration collapsed under a borage of acronyms and complex notations. I don’t think this book is for someone who is not already nearly an expert on the subject. Too many times I saw phrases like "my purpose is not to write a detailed tutorial for..." -- leaving me wondering what background information he would provide.
I cannot say this is a bad book. I can only say I didn’t get much out of it and that most developers would be challenged themselves. I am not an expert in SOA or Web Services, but I have been a Java developer more than six years and a software engineer for more than 20.
Despite being a book about Java Web Services, there is really not very much Java in the book. It’s mostly dense text with XML examples.
No SOA collection should be without it!
08 Jul 2007 @ amazon.com
College-level and professional collections strong in Java web programming will find SOA Using Java Web Servers an important reference: it’s for advanced users and offers a hands-on guide to complementing web services and Service Oriented Architecture. Chapters cover best-practice design ideas and the latest code samples, explaining mapping strategies and SOA integration processes, surveying packaging and deploying web services components, and including code solutions for common development issues. No SOA collection should be without it!
Highly disappointment with this purchase
26 Jun 2007 @ amazon.com
If you want practical implementations of SOA and code snippets of how to do things do not buy this book.
still a lot of coding
29 May 2007 @ amazon.com
Hansen offers the serious and experienced java programmer a way to learn Java Web Services, based on Java EE 5, which is probably the most heavily used version right now. (Version 6 has just come out and the book’s code should easily run under it.)
The bulk of the text essentially works through very detailed examples using JWS and associated (recent) standards like JAXB 2. The gist is to be able to write java code that can take XML output from some Web Service out there on the net, and let you composite it into another Web Service. It’s still not trivial to do. The code fragments assume a working knowledge of several current standards. Hansen is correct when he says that this is much easier than it would have been just a few years ago. The recent upgrades to java and the standards make this possible. But keep in mind that easier does not necessarily mean simple.
One passage in the text might appeal to those hapless enough to have dealt with XSLT. Several years ago, XSLT was promoted as the method to transform one XML representation to another. Several books have been written about this topic. But (bitter) experience has shown that XSLT is a remarkably cumbersome and obtuse way of doing things. What Hansen demonstrates is that JAXB 2 can be used in place of XSLT. Seems much more straightforward. Though to be fair, more practise will be needed doing this, to see if it holds true for other XML transformations.
Best book to know IN & OUT of webservices
19 May 2007 @ amazon.com
This is a very good book to learn and master WebServices and SOA concepts. I am a developer and understand how difficult it is to develop and maintain webservices for an enterprise application. This book explains the concepts very clearly along with very good examples which I use as reference for my development. From design to implementation this book has been very helpful. I recommend that everyone who is working on webservices should have this book. This book also talks about interesting ideas which will help in designing robust and scalable web service applications. It surely helps improve design and build robust,scalable web service application, and very good for reference.