Welcome!

Java IoT Authors: Pat Romanski, Elizabeth White, Liz McMillan, Zakia Bouachraoui, Yeshim Deniz

Related Topics: Java IoT

Java IoT: Article

JBuilder 7.0 Enterprise Edition

JBuilder 7.0 Enterprise Edition

There's no doubt about it. Borland makes great products for developers. They're definitely expensive and usually complex ­ but very powerful. I've been using JBuilder 6 for several months, and when I had the opportunity to review the latest version, I jumped at the chance. I won't take up much of your time by comparing this version with earlier ones, although I will definitely highlight the new features that I found most useful. This review focuses on the Enterprise Edition of JBuilder, not the Standard or Professional.

To do serious Java development, especially in a project team of more than two developers, you need a Java IDE. And you need one that provides features that will free your development life from mundane, tedious, and error-prone tasks. The following are some of the criteria I used to evaluate JBuilder 7.0:

  • Ease of installation and setup
  • Flexible and intuitive project setup
  • Support for multiple developmentprojects
  • Powerful code-editing features
  • Ability to visually inspect class design
  • Facilities for deploying a distributed application, including deploying to leading application servers
  • Support for refactoring techniques
  • Support for multiple JVMs
  • Support for generating test classes for all types of Java components (JSP, servlets, Java classes, EJBs)
  • Support for JSP editing and viewing
  • Powerful debugger
  • Flexible project handling
  • Support for version control systems

    I found JBuilder 7.0 met most of my criteria. What follows is a summary of the results of my evaluation.

    Product Description
    JBuilder is one of the leading IDEs for Java development, and the Enterprise version is used to build distributed J2EE-based applications. In addition, version 7 includes the option to download a Web services pack for developing Web services from your Java components.

    Installation and Setup
    Installation took 10 minutes. JBuilder's installation is based on Zero G Software and was very smooth. Since I wasn't running short of disk space, as is my standard policy, I selected the full install. However, starting the IDE cost me another 15 minutes since I had to go on the Internet to register my license. This was a minor annoyance, as I wasn't connected to the Internet when I installed the product.

    Setting up the project was fairly easy (see Figure 1). I also found that there's a lot of flexibility in configuring the source directories, including libraries and setting up test directories. One of the most useful features is the ability to work on two different projects simultaneously. JBuilder lets you open multiple IDE browsers, one for each project (see Figure 2).

    Menus
    JBuilder has a plethora of useful tabbed menus, and describing each one in detail is beyond the scope of this review. However, I will highlight some of the features that I found useful. Figure 2 shows the tabs with an expanded Tools menu in one project and an expanded Wizards menu in another. The navigation through the menus is very intuitive. Besides the tabs, the coding area and the Object Explorer bring up the appropriate menus when you right-click. The window on the bottom left gives a granular view of the class being coded and also continuously refreshes with errors as you type. The following are some of the useful and distinguishing capabilities of JBuilder 7:

  • It has wizards and tools for configuring deployment to application servers including BEA WebLogic, iPlanet, IBM Web- Sphere, and Tomcat. My applications are built on WebLogic, and it was very easy to set them up for EJB compilation and deployment.
  • The Team menu provides direct access to source control systems. I set this up to work with VSS, our source code repository.
  • JBuilder 7 is well integrated into supporting flexibility in build processes. I set up the project for external builds using Ant.
  • It has an Object Gallery from the File menu (select New) for creating servlets, JSPs, EJBs, XML, Java classes, test classes, etc. I used the option for pulling in EJB definitions from an existing deployment descriptor and it worked like a charm.
  • JBuilder 7 includes EJB development wizards with support for EJB 2.0 BMP.
  • The File menu includes an option, Compare Files, to compare two source files and to merge changes between them.

    Figure 3 shows the Object Gallery for Enterprise components, the app server configuration window, and the EJB Test Client generator wizard.

    The Code Editor
    The code editor is the meat of the IDE. Besides code completion, parenthesis matching, smart indentation, and other neat editing gimmicks (which are very useful), I found JBuilder's editing capabilities far superior to most other IDEs in the market today. A right-click in the main editing window allows you to set up and configure the editor to your heart's content. As shown in Figure 2, I set up the colors to my favorite theme. Shortcuts and meta keys can be completely reconfigured in a manner that Emacs users would be proud of. Other useful features I found included the ability to set up bookmarks, code insight options, and coding style.

    At the bottom of the main editing window is a set of tabs that made development so much easier. In a class design window, the tabs Source, Design, Bean, UML, Doc, and History are available (see Figure 2). This enables you to switch from writing code for designer wizards to writing code for Javadocs, UML-style class diagrams, or your source control system ­ while in the same window. The UML-based feature was most useful in documenting code and understanding existing code. The diagrams are linked via clickable references that allow you to navigate between classes. The shortcomings of the UML features are that there's no way to get the overall class diagram (you can only view one class at a time) and the diagrams can only be saved in .png format.

    Refactoring
    JBuilder 7 provides good support for refactoring, including finding references and definitions; optimizing imports; moving, renaming, and repackaging classes; surrounding existing code with try-catch blocks (very useful!); and extracting methods from existing code. These options are available through the right-click menu. The relevant ones can also be accessed via right-clicks in the Object Explorer window. I've used each of these features at some point in the development cycle. The refactoring support makes redesign and coding much easier.

    I could go on and on about the neat features that JBuilder provides. I've probably used about 20% of the functionality in its arsenal (remember the 80-20 rule). However, such details are beyond the scope of this review. In a nutshell, JBuilder is a great IDE for Java enterprise development that saved me a lot of development and debugging time in my projects while allowing me to manage the entire life cycle of my application.

    Borland JBuilder 7.0 Snapshot
    Target Audience: Enterprise Java developers
    Level: Medium to expert
    Pros:

  • Excellent editing features
  • Robust support for design and deployment of J2EE components, including EJBs, JavaBeans, Java servlets, and JSPs; visual EJB designer
  • Powerful J2EE component development wizards
  • Deployment support for popular application servers
  • Option to automatically generate Javadocs within the IDE
  • Excellent project management
  • Good support for refactoring
  • Excellent user interface, including intuitive and easy-to-use menus; visual designer for switching between source code and visual representation
  • Robust support for databases through DataExpress
  • Support for Ant builds and CVS, ClearCase, and VSS for source control
  • Support for XML parsing
  • Support for JDK 1.4
  • Support for Web services via a downloadable Web services kit

    Cons:

  • Multiple layers of panes require large real estate on the screen. It's very easy to open up too many windows, which leads to confusion
  • JBuilder is expensive as compared to other functional IDEs with similar features

    Borland
    100 Enterprise Way
    Scotts Valley, CA 95066-3249
    Phone: 831 431-1000
    E-mail: [email protected]
    Web: www.Borland.com

    Specifications
    Platforms: Windows 2000/NT/XP, Linux and Solaris, Mac OS X

    Test Environment
    Computer: Sony Vaio Laptop
    Processors: 1GHz Intel
    Memory: 512MB RAM
    Platform: Windows 2000, SP 2

  • More Stories By Ajit Sagar

    Ajit Sagar is Associate VP, Digital Transformation Practice at Infosys Limited. A seasoned IT executive with 20+ years experience across various facts of the industry including consulting, business development, architecture and design he is architecture consulting and delivery lead for Infosys's Digital Transformation practice. He was also the Founding Editor of XML Journal and Chief Editor of Java Developer's Journal.

    Comments (9) View Comments

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Most Recent Comments
    Vasu Srinivasan 11/05/02 09:16:00 AM EST

    I havent worked with JBuilder 7, but have worked with Borland's several previous versions and IDEs. If its expensive, an alternative would be to try WebSphere Studio 4.03 - it is based on open-source editor Eclipse and I have been pretty satisfied with what it can do.

    Ajit Sagar 10/10/02 04:52:00 PM EDT

    Bruce, thanks for bringing that up. I hadn't noticed it. Another con I recently noticed is that if you surroind the code in a try catch, it introduces a lot of indentations. Not sure why.

    Ajit Sagar 10/10/02 04:50:00 PM EDT

    Lei, you are right about the expensive part. You may want to look at IntelliJ's IDEA. JDJ did a review on that in the previous issue. It is much cheaper and very powerful.

    Ajit Sagar 10/10/02 04:48:00 PM EDT

    Thanks Greg, I'm glad you liked the article. The figures were just screen captures, and so I wasn't planning on having the enlarge functionality being active :-)

    Ajit Sagar 10/10/02 04:47:00 PM EDT

    Thanks Bal. I hadn't noticed those. I did have a little trouble with the JSPs and decided, just as you did, to do the JSP deployment outside of the IDE

    Bruce Wallace 10/05/02 11:54:00 AM EDT

    The editor, despite all permutations of IDE/Editor options selected or deselected, will not respond to a tab key if it doesnt think you ought to put one there!
    In other words, you can hit the tab key all you want and they are all ignored if JBuilder doesn't want to insert more space at that point.
    I've WASTED HOURS fighting this and trying to disable it. I never had this problem with JBuilder 4.

    Lei Fong 10/04/02 01:56:00 PM EDT

    Am using 7 and really liking it. But it is expensive. I *need* the EJB designer JBuilder offers. What less expensive alternative is there (I'de really like something that can do everything JB can (EJB, ANT suport, good project managment, good VCS support, J2ME support, good documentation, JDKswitching) but with JBoss (as well as WL) support out of the box)

    greg keys 10/04/02 09:27:00 AM EDT

    great article but no need to include the figures: "click to Enlarge" did not enlarge enough to see anything. 'Seeing is believing; A picture says a thousand words'... and all that.

    Bal 10/03/02 07:04:00 PM EDT

    - under Linux multiple browsers are not usable
    - the JSP apps don't behave under the IDE as they do outside, (but you can work around this by not using the builtin launcher)

    IoT & Smart Cities Stories
    DXWorldEXPO LLC announced today that Ed Featherston has been named the "Tech Chair" of "FinTechEXPO - New York Blockchain Event" of CloudEXPO's 10-Year Anniversary Event which will take place on November 12-13, 2018 in New York City. CloudEXPO | DXWorldEXPO New York will present keynotes, general sessions, and more than 20 blockchain sessions by leading FinTech experts.
    Apps and devices shouldn't stop working when there's limited or no network connectivity. Learn how to bring data stored in a cloud database to the edge of the network (and back again) whenever an Internet connection is available. In his session at 17th Cloud Expo, Ben Perlmutter, a Sales Engineer with IBM Cloudant, demonstrated techniques for replicating cloud databases with devices in order to build offline-first mobile or Internet of Things (IoT) apps that can provide a better, faster user e...
    Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science" is responsible for guiding the technology strategy within Hitachi Vantara for IoT and Analytics. Bill brings a balanced business-technology approach that focuses on business outcomes to drive data, analytics and technology decisions that underpin an organization's digital transformation strategy.
    Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
    Rodrigo Coutinho is part of OutSystems' founders' team and currently the Head of Product Design. He provides a cross-functional role where he supports Product Management in defining the positioning and direction of the Agile Platform, while at the same time promoting model-based development and new techniques to deliver applications in the cloud.
    Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
    In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and simple way to introduce Machine Leaning to anyone and everyone. He solved a machine learning problem and demonstrated an easy way to be able to do machine learning without even coding. Raju Shreewastava is the founder of Big Data Trunk (www.BigDataTrunk.com), a Big Data Training and consulting firm with offices in the United States. He previously led the data warehouse/business intelligence and Bi...
    Cell networks have the advantage of long-range communications, reaching an estimated 90% of the world. But cell networks such as 2G, 3G and LTE consume lots of power and were designed for connecting people. They are not optimized for low- or battery-powered devices or for IoT applications with infrequently transmitted data. Cell IoT modules that support narrow-band IoT and 4G cell networks will enable cell connectivity, device management, and app enablement for low-power wide-area network IoT. B...
    The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform and how we integrate our thinking to solve complicated problems. In his session at 19th Cloud Expo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and sh...
    What are the new priorities for the connected business? First: businesses need to think differently about the types of connections they will need to make – these span well beyond the traditional app to app into more modern forms of integration including SaaS integrations, mobile integrations, APIs, device integration and Big Data integration. It’s important these are unified together vs. doing them all piecemeal. Second, these types of connections need to be simple to design, adapt and configure...