Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Java Books Media Programming The Internet Book Reviews

Java Web Services in a Nutshell 91

milaf writes "Surprisingly many people have absolutely wrong ideas about Web Services. I think that the hype and perceived simplicity of everything having to do with the Web are to blame. Well, that, and the wide-spread 'confidence through ignorance' among us." Read on for milaf's review of the O'Reilly-published Java Web Services in a Nutshell, which he says displaces hype with good information.
Java web services in a nutshell
author Kim Topley
pages 642
publisher O'Reilly
rating 9/10
reviewer Alex
ISBN 0596003994
summary Excellent book on Web Services for Java developers, related standards and technologies

I expected this book to be similar to other "Nutshell" books that I like and am familiar with: a very accurate and concise description of the domain, followed by a huge API reference. Well, I was pleasantly surprised: this book reads more like a tutorial, yet it is a reference in the sense that you can easily read its parts independently, and its index is quite useful and complete.

The book covers all technologies necessary for defining, implementing, and deploying Web Services for both client and server sides:

  • WSDL (Web Services Definition Language), the XML-based interface definition language (and more); CORBA folks: this is your IDL for the Web Services platform, only not as easily read or understood. Not to worry: there are GUI-based editors for this thing, many of them are free. Plus the book explains WSDL format and structure in a great detail.
  • JAXR, a client-side interface for extraction of business and service information from the compliant Web Service registries.
  • JAX-RPC (two chapters: basic and advanced); at the application level this technology is similar to CORBA using Java.
  • JAXM, a high level standard-based generic interface to messaging that is implemented by a messaging provider. It offers the benefits of asynchronous messaging, robust message delivery, and message profiles (use of SOAP message headers).
  • SAAJ is a low-level Java interface to SOAP; under the hood some of the mentioned technologies use it.

For each of these technologies the author dedicates enormous effort to showing intricate but very relevant technical details without obscuring the big picture. There is a necessary but not overwhelming amount of Java code and XML. You will be able to reuse the examples since they are very clear.

The book has a chapter on Web Services tools and configuration files. This is a very helpful chapter: the business of defining deployment descriptors by hand is a messy job; presence of this chapter makes the job a bit easier. A small but helpful API reference may be found at the end of the volume.

If you need to understand the details of how to build, implement, and deploy Web Services, you will not be disappointed. There is absolutely no hype in this book! Considering the topic, nowadays this alone is an achievement.

Web Services technology is not the "Web Stuff," it is not related to browsing the WWW, and it does not pertain to the services offered by the WWW vendors (unless Web Services is what they sell). It is a fast-growing technology for programming in the distributed computing environment. Judging by the hype and money being spent on it by the leading powerhouses, it is going to be very prolific and important technology in the near future. Want to know more? -- Read the book!


You can purchase Java Web Services in a Nutshell from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

This discussion has been archived. No new comments can be posted.

Java Web Services in a Nutshell

Comments Filter:
  • by Anonymous Coward on Wednesday September 10, 2003 @01:13PM (#6922661)
    What next? A duplicate article posting?
    • by pope1 ( 40057 ) on Wednesday September 10, 2003 @01:39PM (#6922874) Homepage
      slashdot dosen't post duplicate articles,
      they are just experimenting with RAID:

      Redundant Articles Interleaving Daily

      That way, just in case you miss something important
      because a lot of stories are being posted, you can catch it later w/o having to back track.

      Be very afraid if they try and test thier RAID5 setup, where theres a SCO article at the top of the site that just never goes away, for parity.
  • Web Services? (Score:4, Informative)

    by _Sharp'r_ ( 649297 ) <sharper@@@booksunderreview...com> on Wednesday September 10, 2003 @01:13PM (#6922662) Homepage Journal
    I wish they had managed to call it something besides "Web Services" when it doesn't have a lot to do with the "World Wide Web". That's been the biggest point of confusion I've found trying to explain web services to semi-technical people.

    The services part hasn't been much better than the Web part, but at least it's mostly fitting.

    The book reviewed is a pretty good overview. I just wish they had spent more time on typical internal corporate uses and tools to convert/interact with existing legacy software products.

    You can find some similar related books at BUR - Web Services/Soap [booksunderreview.com]. I am looking forward to the days when standards like this combined with older stuff like XML and CSS make combining and processing data from disparete sources becomes a lot easier than it typically is now!
    • Re:Web Services? (Score:3, Interesting)

      by Directrix1 ( 157787 )
      Well, its damned easy on java if you use AltRMI [apache.org].
      • It is in python :)

        1. import xmlrpclib

        2. myserver = xmlrpclib.Server('http://rarara.com:8000')

        3. myresult = myserver.profit()

        Yup. Xmlrpc invocation in 3 lines.
        • Factory factory = new ClientSideClassFactory(false);
          factory.setHostContext(new SocketCustomStreamHostContext("somehost", 1235));
          TestInterface ti = (TestInterface) af.lookup("Hello");

          AltRMI in 3 lines!!!
    • Problem is we're running out of names in IT. If not Web Services then what?

      Network Services ... taken
      Remote Services ... taken
      Shared Services ... taken
      Pluggable Services ... taken
      Grid Services ... taken


      We need a new name, something that's kinda "Net" but not used yet. How about "Scattered" or "Decentralized", or are those taken too? I think a good acronym would have been less confusing and more importantly would result in fewer questions.

      Anyhow, a lot of words just to say "I agree", the "Web"
      • Why a new name when it does the same thing that's been going on over networks for the last 20 years? This is nothing more than another version of distributed object technology. Just like DCE, CORBA, RPC, yada yada yada. The only thing is that neat tools for making it work on a web server (which is already overloaded with other crap).

        Someone sat in a room one day and thought, "Hey, why not do that again, but on port 80/443 and with XML messages! And let's call it something new!".

        The interesting part is
        • Why a new name when it does the same thing that's been going on over networks for the last 20 years?

          Probably because the folks in marketing think new names sell more software and services. Wasn't there a Dilbert on this a while back?
  • JAXM: Dead or Alive? (Score:5, Interesting)

    by livinglegend5000 ( 705999 ) on Wednesday September 10, 2003 @01:17PM (#6922691) Homepage
    When I attended the JavaOne conference in June I asked one of the speakers/JAX-RPC developers from Sun why the JAXM (Java API for XML Messaging) was not included in the latest release of the Java Web Services Developers Pack (1.2). She said that it was because the JAXM library was not developmentally mature, which really concerns me since I have 5 production application using JAXM. She recommended using JAX-RPC (Remote Procedure Calls) instead, which I've been researching.

    So, I found it interesting that the author has chosen to include JAXM in his book. I have no beef against JAXM, it works as stated. But the threat of abandoned developments concerns me... Does JAXM have some life left in it yet? Does the author know something we don't?

    • Now that's scary. We wrote a db to db interface around JAXM, but higher-ups got nervous about using SOAP, so it was shelved for the time being.

      I hope Sun's decision is a temporary one, because JAXM sure takes all the work out of SOAP, and like you said, it appears to work as stated.

    • I looked on the java site and actually JAXM 1.1.2 is avaiable as an OPTIONAL library in JWSDP 1.2. I actually have production stuff running JAXM, so I was relieved to see this. They probably made it optional because Sun is fighting MS on the best way to handle Web Services. Sun prefers an RPC approach whereas MS prefers the SOAP Messaging method. Actually the only reason I am using JAXM is because the .NET Web Service I am calling doesn't play nice with JAX-RPC clients. So in answer to your question I
  • by pope1 ( 40057 ) on Wednesday September 10, 2003 @01:17PM (#6922693) Homepage
    libTurtle SDK on the Half Shell.
    WINE in a Cask.
    The freshmeat.net Handbook from the Butcher.

    I love all the silly food/drink references we deal with every day in the IT field.
  • in a computer case? I mean, size and insulation of a nutshell are going to lead to overheating quite quickly.
  • Nice review...not (Score:2, Insightful)

    by infinii ( 27811 )
    Wow, why bother typing out that review when you could have just posted a link to ORA's [oreilly.com] description. ;)

    Can anyone explain the differences between "Java Web Services in a Nutshell" and "Java Web Services" both published by O'Reilly? Look very similar with the latter probably a bit outdated seeing as it was published March 2002. Is this Nutshell book just a rehash of the other book but with updated API's?
    • Re:Nice review...not (Score:1, Informative)

      by Anonymous Coward
      Without looking at the specific title in question - O'reilly's nutshell books are usually light on the instruction and heavy on the reference. Their regular books are the opposite.
  • by Anonymous Coward on Wednesday September 10, 2003 @01:25PM (#6922761)
    I expected this book to be similar to other "Nutshell" books that I like and am familiar with: a very accurate and concise description of the domain, followed by a huge API reference. Well, I was pleasantly surprised: this book reads more like a tutorial, yet it is a reference in the sense that you can easily read its parts independently, and its index is quite useful and complete.

    The book covers all technologies necessary for defining, implementing, and deploying Web Services for both client and server sides:

    * WSDL (Web Services Definition Language), the XML-based interface definition language (and more); CORBA folks: this is your IDL for the Web Services platform, only not as easily read or understood. Not to worry: there are GUI-based editors for this thing, many of them are free. Plus the book explains WSDL format and structure in a great detail.
    * JAXR, a client-side interface for extraction of business and service information from the compliant Web Service registries.
    * JAX-RPC (two chapters: basic and advanced); at the application level this technology is similar to CORBA using Java.
    * JAXM, a high level standard-based generic interface to messaging that is implemented by a messaging provider. It offers the benefits of asynchronous messaging, robust message delivery, and message profiles (use of SOAP message headers).
    * SAAJ is a low-level Java interface to SOAP; under the hood some of the mentioned technologies use it.

    For each of these technologies the author dedicates enormous effort to showing intricate but very relevant technical details without obscuring the big picture. There is a necessary but not overwhelming amount of Java code and XML. You will be able to reuse the examples since they are very clear.

    The book has a chapter on Web Services tools and configuration files. This is a very helpful chapter: the business of defining deployment descriptors by hand is a messy job; presence of this chapter makes the job a bit easier. A small but helpful API reference may be found at the end of the volume.

    If you need to understand the details of how to build, implement, and deploy Web Services, you will not be disappointed. There is absolutely no hype in this book! Considering the topic, nowadays this alone is an achievement.

    Web Services technology is not the "Web Stuff," it is not related to browsing the WWW, and it does not pertain to the services offered by the WWW vendors (unless Web Services is what they sell). It is a fast-growing technology for programming in the distributed computing environment. Judging by the hype and money being spent on it by the leading powerhouses, it is going to be very prolific and important technology in the near future. Want to know more? -- Read the book!
    • by Anonymous Coward
      Ugh. Another instance of moderators on crack. Why is this post informative? It is just a copy and paste of the original and it will still be page widened until they fix the original (at which point this is redundant).
  • by Anonymous Coward
  • Heh (Score:4, Funny)

    by teslatug ( 543527 ) on Wednesday September 10, 2003 @01:38PM (#6922864)
    I have to go buy a side-scrolling mouse [slashdot.org], brb
  • by crankyspice ( 63953 ) on Wednesday September 10, 2003 @01:40PM (#6922877)
    I have to implement a set of web services here on (I know, I know, not my choice) MS SQL 2000 Server. I have the option of using ASP (gack), Perl, or PHP, or any combination thereof. At first, probably mostly HTTP GET and POSTs, but eventually we'll implement SOAP.

    What books (O'Reilly?), if any, are a 'must have' for this type of work, and these tools? I know my way around PHP reasonably well, Perl at a not-quite-amateur-not-quite-pro level, and ASP / Java not at all. I've got two months, give or take, so I don't want to take the time to get up to speed on a whole new language.

    Any first-hand recommendations would be much appreciated; I've got to order books today (found out yesterday)...

    Argh.

    THANKS!!!
  • I think web services are a great idea, but from my understanding of them, it really is an all or nothing concept... either everyone has to use them and supply them or they are (mostly) useless to the general public...
  • by kfg ( 145172 ) on Wednesday September 10, 2003 @01:43PM (#6922912)
    "I expected this book to be similar to other "Nutshell" books that I like and am familiar with:
    a very accurate and concise description of the domain, followed by a huge API reference."

    Which is exactly what I'm looking for when buying a Nutshell book and expect to get.

    "this book reads more like a tutorial"

    Which is precisely what I don't want when buying a Nutshell book.

    Thanks for the review, you may have saved me grave diappointment.

    KFG
  • I have the book "Web Services Essentials", also from O'Reilly. I'm curious how the Nutshell book differs. The review makes it sound quite similar.

    At any rate, the Essentials book is a good overview of all the relevant technologies and can help you start to see the "forest". I would actually recommend it for PHBs who have 1/2 a technical clue.
  • Ahem. (Score:5, Insightful)

    by American AC in Paris ( 230456 ) on Wednesday September 10, 2003 @01:50PM (#6922959) Homepage
    Surprisingly many people have absolutely wrong ideas about Web Services. I think that the hype and perceived simplicity of everything having to do with the Web are to blame. Well, that, and the wide-spread 'confidence through ignorance' among us.

    Y'know, Web Services may--may--be an absolutely wonderful thing, but this review has done slightly less than nothing to convince me otherwise. I'll readily admit that I look askance at Web Services because all I read or hear about them comes from four-color glossies loaded with as many new acronyms as hyperbolic business-speak. I will admit that I know next to nothing about these services from the technical standpoint, and I will further acknowledge that if I were to read these books, I could very well be won over by them.

    That said, this review did absolutely nothing to make me want to pick these books up. The main body of your review consists of bulleted list of acronyms that does little more than define them by using other, more commonly recognized acronyms. You then go on to tell us that it's a good book without giving us any reasons beyond a nebulous "the author dedicates enormous effort to showing intricate but very relevant technical details without obscuring the big picture". Well, gosh, that sums up just about any technical manual worth it's salt, man! What makes this one special? What about this book is going to fix the "wrong ideas" I have about Web Services?

    You talk about how the book contains no hype (I do hope you appreciate the irony of ending that sentence with an exclamation point, by the way.) You then close the review with "Judging by the hype and money being spent on it by the leading powerhouses, it is going to be very prolific and important technology in the near future." If you're trying to correct misconceptions about Web Services, I can only assume that you want more and more technical people to view Web Services as the Fad-Of-The-Week for PHB's worldwide and not a useful, powerful technology.

    This isn't a review, it's an outline of the book, and a rambling one, at that. Tell us what makes it a good book, dammit! Tell us why we're wrong about Web Services being little more than marketing fluff and flashy buzzwords!

    • Fellow Slashdotters, prepare to be dazzled! [walks to the front of the room]
      Well, as Timothy already mentioned, the name of the book that I
      read is "Java Web Services In A Nutshell". It's about these... [describing the book jacket]
      services... with acronyms like . JAX-RPC ... and... WSDL...
      and Web Services tools and configuration files... [pause]
      Did I mention this book was written by a guy named Kim Topley?
      And published by the good people at O'Reilly. So, in conclusion,
      on the Slashdot scale of one to te
      • Re:Ahem. (Score:2, Funny)

        by sdcharle ( 631718 )
        Booo!

        Bring back the kid with the toad in a jar, I liked his show and tell better.

        You are so right, though, this review reminds me so much of kids in 5th grade copying the back cover text of a book they read, then submitting it as a book report.

  • by Anonymous Coward
    9 - good
    8 - average
    7 - poor

    The last ten book reviews on slashdot have ratings that all fall within this range. The lowest had a rating of 7, the highest, 9.
  • I do webservice programming myself. and to make it short: this is one of the best books on the topic ever
  • by Anonymous Coward
    One of the few times geeks use soap.
  • by ENOENT ( 25325 ) on Wednesday September 10, 2003 @03:48PM (#6924109) Homepage Journal
    O'Reilly's latest offering, FOO in a Nutshell, dispells many of the myths surrounding FOO and shows it to be a worthy contender in the BAR arena. Even though BAZ, QUX, and QUUX have been proposed as alternatives to FOO, only FOO provides the full power of SNERGLE to MUMBLE programmers.

    Chapter 1 is the introduction, chapters 2-73 are the stuff that comes after the introduction, and then comes the index, which has some really good stuff in it.

    So, in short, FOO in a Nutshell is better than anything else at explaining why you should incorporate DWEEZIL into your FLARK.

    Rating: 9.5/10
  • by Corporate Gadfly ( 227676 ) on Wednesday September 10, 2003 @04:44PM (#6924694)
    Nice job with the line breaks there, buddy!! Because of your mistake (and the editor's) anyone who is really interested in this topic will have to suffer through horizontal scrolling (big deterrant).

    Don't the editors have a preview button (or common sense for fsck's sake)?
  • by JustAnotherReader ( 470464 ) on Wednesday September 10, 2003 @05:05PM (#6924962)
    A couple of other technologies that people considering web services should look into are:
    • Castor [exolab.org] is a free tool which allows you to convert XML to Java objects and back. If you build a servlet that returns the XML string that represents an object then you essentially have a Web Service.
    • Apache Axis [apache.org] a free implementation of SOAP and web services. Oddly enough, if you browse the source code of Axis you'll see Castor packages.
    Just two technologies that wern't mentioned in the article. You might find them more useful than the ones that were.
  • by Anonymous Coward
    I must say that I've purchased this book a few weeks ago and that it does cover all of the JAX* technologies really well. The only negative that I'd have to say about the book is that it utilizes the J2EE 1.4 tools heavily. I don't know how many of you are working with a J2EE 1.4 app server out there? There are several problems with Sun's wscompile script:
    • For the -wsdl2java option there isn't any documented way to set an http-proxy host (I think my workaround was to call after calling Ant's setproxy tar
  • RPC Web Services as specified by the W3C are doomed to failure because of their unnecessary complexity and the apparent need of the vendors to create additional standards such as "Web Services choreography" and B2BXML. In contrast, the much simpler and more powerful RESTful web services have been successful for years in this samemarketplace.

    RESTful web services are the services primarily in place today: they utilize existing WWW security standards, are easy to implement and debug, and are available today.

Solutions are obvious if one only has the optical power to observe them over the horizon. -- K.A. Arsdall

Working...