NetBeans Enterprise Pack Project Home
The NetBeans Enterprise Pack is an open source and freely available add-on to the NetBeans IDE geared toward enterprise application development. The Enterprise Pack contains open-sourced features from Sun's Java Studio Enterprise and Java CAPS products, as well as all-new features for creating composite applications, BPEL-based Web services, secure Java EE Web services, and real-world XML artifacts like XML Schema and WSDL.
Got SODA? Energize Service-Oriented Development of Applications With NetBeans IDE and NetBeans Enterprise Pack is an article that offers an overview of NetBeans Enterprise Pack. NetBeans Enterprise Pack 5.5 Videos lists the different videos that illustrate NetBeans Enterprise Pack functionality, including an overview of the XML schema authoring tools and BPEL orchestration tools in NetBeans Enterprise Pack 5.5.
The first release of the NetBeans Enterprise Pack coincided with the release of NetBeans 5.5 IDE.
In the follow on release of NetBeans Enterprise Pack, the capability is available as a "feature cluster" - called "SOA Pack". The new features that are available in NetBeans 6.0 SOA Pack over and above the features in the first release are:
NetBeans 6.0 SOA Pack also includes Open ESB 2.0 Beta. Open ESB 2.0 Beta implements a Java Business Integration (JBI) runtime that incorporates the JSR 208 specification for Java Business Integration and other open standards. Open ESB allows you to integrate web services and enterprise applications as loosely coupled composite applications, realizing the benefits of a service-oriented architecture (SOA). For more information, see Java Technology and Business Integration Services.
Concept & Vision
The overarching theme for the NetBeans Enterprise Pack is to provide tools to help developers build composite applications using a variety of technologies to solve medium- to large-scale business requirements. We place considerable emphasis on service-oriented architecture (SOA) technologies as a means to achieve this end.
Composite applications are applications with a capital "A"—large applications that span multiple systems, technologies, and architectures. In the enterprise, in which there is a mix of technology, systems, and architecture that have accreted over a long period of time, composite applications are the norm. However, tools today primarily address only selected pieces of what we call the application problem, meaning the business need for an application that must be addressed by the application developer. Except in very rare circumstances, the full scope of an enterprise application spans multiple front-ends (for example, intranets, extranets, B2C portals) and multiple back-ends (for example, databases, mainframes, manual processes); requires coordination across multiple technologies, systems, and business units; and must incorporate considerations like end-to-end security.
For the mathematically minded, rather than a single equation, an enterprise-class application problem consists of many dependent equations with multiple terms that must be solved together. Thus, as tool providers, we can either approach this problem as providers of tools to make solving each equation easier, or tools for making solving all equations at once not just easier, but possible.
Role of NetBeans Enterprise Pack
We consider large-scale application needs as the real problem that the NetBeans Enterprise Pack can and should address, rather than just providing lower-level technology tools that leave highly-skilled developers to fill in the gaps between them. Rather than focus on point technologies, such as Web applications, thick client front-ends, and EJB back-ends, tools for composite applications should look at the full scope of the problem and address not just the individual point technology issues, but also the spaces between the technologies. Though traditionally this view is thought of as enterprise application integration, or EAI, to the developer this is all just part of building an application, albeit a large and complicated application which makes use of heterogeneous resources. While certainly these kinds of problems can be solved by a combination of point technologies (like those found in the Java EE SDK) and lots of developer-provided glue, such solutions are not ideal because they require large amounts of time and resources, and are generally brittle and difficult to adapt to changing business needs.
It's easy to build a tool that helps developers build a widget faster and easier. What's more difficult is building a tool that helps developers avoid building widgets and instead focus on solving the real problem: solving a business need using technology as a means. Most tools designed for point technologies treat the technology as an end; rather, technology is a means to an end, and while developers need good tools to deal with complex technologies, if tools are to evolve beyond just "easier and faster," they must not stop at the technology and instead try to solve the larger problems that today require a great deal of manual skill and resources to address. Therefore, we can provide the most value to developers by considering the broader context within which they solve their business needs. This is the goal for the NetBeans Enterprise Pack.
SOA as a Means to an End
The rise of service-oriented architecture (SOA) formalizations gives both developers and tool providers a way to achieve a consistent composite application solution. With SOA technologies, there is now a mechanism (or we should say, several mechanisms unified under one architecture) for bridging systems in a consistent way, using standard protocols, that cross point technology boundaries. Unlike technologies like CORBA and RMI, SOA encourages loose coupling between services. Loose coupling allows composite application developers to focus on use cases and system interactions beyond the traditional programmatic styles used in the past, and allows a clear separation of technologies and systems. Therefore, SOA is the underlying theme, but the practical route forward is in building composite applications, and doing so using tools that encompass the entire solution rather than just point solutions based on a particular technology.
The NetBeans Enterprise Pack project consists of several subprojects, listed in the table below.
NetBeans Enterprise Pack is released with the NetBeans IDE.
NetBeans Enterprise Pack 5.5: Current Release
The current release is NetBeans Enterprise Pack 5.5. You can download this release from the NetBeans Enterprise Pack 5.5 Download page. For more information about the 5.5 release, visit the NetBeans Enterprise Pack main page.
NetBeans 6.0 SOA pack: Upcoming Release
NetBeans 6.0 SOA pack Milestone Builds are now available.
The UML module is now made available independent of the NetBeans Enterprise Pack download on the Auto Update center. You asked and we listened. NetBeans Enterprise Pack 5.5 does not carry the UML functionality with it. Instead the UML functionality can be obtained from the Auto Update center. For more details on this and other UML specific changes, please visit UML Modeling.
Visit each project page listed in the table above for detailed documentation on specific features and technologies included in the NetBeans Enterprise Pack. You can also review the complete list of documentation on this page: NetBeans Enterprise Pack 5.5 Tutorials, Guides, and Articles.
To send feedback, get support, and receive updates and general information about the NetBeans Enterprise Pack.
For specific technologies included in the NetBeans Enterprise Pack, please follow the link to the subproject's homepage in the table above and use the Mailing Lists links on the left of the page to subscribe to the appropriate mailing lists.
General questions about NetBeans Enterprise Pack functionality can also be asked on the nbusers netbeans mailing list.
Instructions for Building NetBeans 6.0 SOA Pack from source are available. These instructions are for the upcoming NetBeans 6.0 SOA Pack.
Note: Design-time tools are included in the open-source build but the runtimes are not. To test deployment, use one of the released builds listed in the section above.