I’ ve had a few emails recently asking about the book and
wanting to find out some more information before laying down the money to purchase
it. Given the ’one liner’ we have on Amazon about it, I think this
is a fair comment, so thought I would dedicate some time here about it…
One of the reasons I wrote the book was to show the reality of interoperability today
between .NET and J2EE. Sure, the direction of Web services and XML is promoting
a glowing future of transparent interoperability between the two, but the reality
of plugging together the two platforms today can be somewhat different. In addition
I also wanted to cover and expose some interoperability techniques where Web services
don’t have a natural fit today - such as communication using .NET Remoting, a
shared database, using message queues and other approaches.
So, the book itself is divided into four parts:
Part 1 looks at some of the fundamentals of interoperability - this includes
many of the customer requirements for interoperability today, outlines some of the
challenges and concentrates on the principles of sharing data between the two.
At the end of Part 1 I look at XML’s role in achieving interoperability and cover
the pros and cons of parsing vs. serialization between the .NET Framework and J2SE.
Part 2 covers what I call point to point interoperability - that is where
you have a component in .NET (for example an ASP.NET page) that needs to call a component
in J2EE (e.g. an EJB) in a synchronous, request-response type call. Typically,
these types of scenarios are used where you are integrating new presentation or business
tier logic into an existing application. Part 2 looks at two approaches that
can be taken to connect the two using both .NET Remoting and Web Services. The
chapters weigh the advantages and disadvantages of each, as well as covering
production worthy approaches as opposed to just showing a ’ hello world’ sample.
Part 3 covers the area of asynchronous interoperability - this part shows some
of the approaches and techniques that can be used to perform asynchronous interoperability
between the two platforms. This includes setting up a shared database (and more
importantly some of the DAO patterns and recommendations for doing this), using MSMQ
to bridge the two, using IBM’ s WebSphere MQ (formerly MQ Series) to connect the two
together, using BizTalk Server 2004 and Microsoft’ s Host Integration Server 2000.
I personally feel that the WebSphere MQ chapter was important to include - and
hopefully promotes the neutral approach that I tried to take despite this being a
book from Microsoft Press. The entire chapter covers setting up WebSphere MQ
on a J2EE application server (I selected JBoss 3.0.7 for the book to avoid an affliation
with any particular J2EE application server vendor and so that reader can try
the samples without laying out any $), creating some MDBs (Message Driven Beans) that
in turn are responsible for invoking .NET components upon incoming messages to the
queue. It was an interesting chapter to write, and an approach that I know a
number of organizations are using today.
Part 4 concludes the book with advanced interoperability – which starts with a chapter
on presentation tier interoperability. This one demonstrates the advantages
of sharing both session state and authentication information in a dual JSP and ASP.NET
environment. The driver behind this was to appeal to readers who have a large
investment in JSP and want to integrate ASP.NET pages - but do this a few pages
at a time (as rewriting a complete web site can be pretty expensive). Obviously,
one of the issues here is that although you can present ASP.NET pages and controls
within a JSP environment, the sharing of session data and authentication becomes a
little more complicated. Also in Chapter 4 I cover some of the emerging standards
in the new Web services space - namely WS-Security, WS-Routing and WS-Attachments.
For each of these we have a chapter that not only covers the specification, but also
shows real samples of these working today.
The book also ships with a CD that contains samples for *each* technical chapter in
the book. I know that many people (just as I do) learn most from trying out
sample code instead of reading through tomes of documentation, so I felt this was
especially important to include. The CD also contains versions of the GLUE Web
services toolkit from The Mind Electric (now webMethods) and Ja.NET from Intrinsyc -
both to make sure that you can get the samples up and running with the minimum of
So, that’ s the run-down and I hope this has answered some of the questions that I’
ve been receiving. I’ m more than happy to take individual questions about the
book (either before of after you’ ve purchased it :).