The focus is very much on enterprise or data center environments, where scalability, throughput, reliability and security are the main operating requirements. It is not intended as a manual for how to write .NET or J2EE applications, but how to get these components to work together while minimizing any compromises to operational effectiveness.Chapter 2: Understanding Enterprise Platforms
Chapter 2 consists of two parts. The first part looks at .NET from the perspective of an experienced J2EE developer. It links .NET concepts to principles that you already understand, showing where the two platforms differ and where they are similar. The second part of this chapter is the mirror image, providing equivalent information but for the experienced .NET developer. It introduces you to the enterprise features of J2EE and explains how Java applications work in distributed environments.Chapter 3: Interoperability Fundamentals
Chapter 3 looks at the fundamentals of connecting .NET and Java-based applications, concentrating on the exchange of data between the two technologies. The main focus is on ensuring that both platforms agree on data types, particularly with complex data types.Chapter 4: Interoperability Technologies: Point to Point
Chapter 4 concentrates on the point to point communication methods of XML Web services and .NET Remoting. Topics include binary communication and routing, together with the use of third-party runtime bridges for integrating Java and .NET.Chapter 5: Interoperability Technologies: Data Tier
This chapter continues on from Chapter 4 to concentrate on techniques that apply to the Data or Resource tier. Techniques covered include shared databases and asynchronous message queuing. Finally, this chapter briefly covers other asynchronous techniques such as using the MSMQ-MQSeries Bridge in Microsoft Host Integration Server.Chapter 6: Implementing Interoperability Design Elements
Chapter 6 takes the concepts from Chapters 4 and 5 and describes how you can implement these ideas in enterprise-class application. It looks at best practices in both J2EE and .NET programming, emphasizing the role of abstraction layers in applications. The chapter moves on to showing how you would implement abstraction layers such as service interfaces and interoperability adapters in your design. Finally, it details how the sample application implements interoperability using these elements.Chapter 7: Integrating .NET in the Presentation Tier
Chapter 7 uses the XBikes example to illustrate the scenario where you want to integrate ASP.NET Presentation tier components while keeping the existing J2EE Business tier. This allows an organization to preserve its existing investment in J2EE and take advantage of the enriched client experience that ASP.NET provides.Chapter 8: Integrating .NET in the Business Tier
In Chapter 8, you see how the XBikes example can integrate new .NET Business tier components, while preserving the same JSP-based front end. This solution is appropriate for companies that want to maintain the same client experience but modify the Business tier. Adding .NET components allows for rapid development of business logic components or allows the use of third-party .NET Framework based products.Chapter 9: Implementing Asynchronous Interoperability
The final chapter looks at interoperability using messaging components in the Data Resource tier. Taking the XBikes sample code, it shows how you can use Messaging components such as Microsoft Message Queue or Java Messaging Service implementations to connect to message queues, providing asynchronous operation, providing support for transactions and long running operations.Appendix A: Installing XBikes on J2EE
Detailed steps for installing the XBikes sample application on J2EE.Appendix B: Installing XBikes on .NET
Detailed steps for installing the XBikes sample application on Microsoft .NET.Community
This guide, like many patterns & practices titles, is associated with newsgroups for community support. Use this newsgroup to post questions, provide feedback, or connect with other users for sharing ideas. Access to the newsgroups is available through a Web-based newsreader and NNTP format. Newsgroup: Web-Based Readerhttp://msdn.microsoft.com/newsgroups/Newsgroup: NNTP Readernews://msnews.microsoft.com/Feedback and Support
Questions? Comments? Suggestions? For feedback on this guide, please send e-mail to [email protected] Interoperability: Microsoft .NET and J2EE presents interoperability best practices, and illustrates these approaches with a functional sample application. It shows how to link Microsoft .NET and J2EE, using Web services, runtime bridges, and asynchronous techniques. The example code is provided as source code that you can use "as-is" or customized for your application. Support is available on a best effort basis through the feedback alias.Collaborators
Many thanks to the following advisors who provided invaluable assistance: Gianpaolo Carraro, Microsoft Corporation 
Simon Guest, Microsoft Corporation 
Sandy Khaund, Microsoft Corporation 
Arvindra Sehmi, Microsoft Corporation 
Thanks also to the many contributors who assisted us in the production, in particular: RoAnn Corbisier, Microsoft Corporation 
Chris Sfanos, Microsoft Corporation 
Tina Burden, Entirenet 
Finally, thanks to the company that agreed to participate in our user experience test: Infosys Technologies