Welcome!

Recurring Revenue Authors: Carmen Gonzalez, Pat Romanski, Greg Schulz, Christopher Harrold, Elizabeth White

Related Topics: Recurring Revenue, Java IoT

Recurring Revenue: Article

Java Product Review — Oracle JDeveloper An IDE Worth a Second Look

It's never too late for a second chance at a first impression

As the saying goes you never get a second chance at a first impression. In general, that's true, but if you've been thoroughly revitalized, matured, and cosmetically re-engineered, shouldn't you get a second shot at that first impression? I'd argue that's true of Oracle's Java/J2EE Workbench, Oracle JDeveloper.

Starting out life as a code fork from Borland's JBuilder tool back in 1997, Oracle JDeveloper has had a fairly long history as a Java IDE, most of it in relative obscurity. Things have changed though. During JavaOne 2005, Oracle announced that Oracle JDeveloper would henceforth be free. This sparked interest, since JDeveloper always had areas of definite benefits over other tools but came with a price tag. Furthermore, over the last couple of years, Oracle has added rich support for all areas of Java and JEE development, especially in the case of the latest 10.1.3.1 rev released in October 2006 during Oracle OpenWorld.

This latest release supports JEE 5 standards such as EJB 3.0 and JSR-220 Java Persistence API, JSR-181 Web Service Annotations, as well as JavaServer Faces. It also brings a visual design time environment for creating Business Process Execution Language (BPEL) processes and Enterprise Service Bus (ESB) Services and features-enriched functionality for Java, XML, Web Services and Web application development. I'd like to invite you to take a brief tour to get that second look and a new first impression of Oracle JDeveloper.

Getting To Know Oracle JDeveloper
JDeveloper 10.1.3.1 can be downloaded from Oracle's Technology Network at http://oracle.com/technology//jdev (up to 420 MB). Installation only takes unzipping an archive. When running, JDeveloper's Studio Edition consumes a somewhat greedy 180 MB memory by just being there.

Plain Old Java Programming
Java IDEs are typically evaluated first and foremost on their ability to support pure Java programming. Oracle JDeveloper has a history riddled with wizards and frameworks and facilities for all kinds of development, but it tended to trail behind other prominent IDEs when it came to Plain Old Java Programming (POJP). With recent releases that gap has been closed and Oracle JDeveloper currently offers at least the same, if not more features, than can be found in alternative tools.

Built-in features include:

  • Refactoring - with options such as extract code fragment as method and extract interface or superclass
  • Code folding
  • Quick view of JavaDoc of referenced classes and methods
  • Code completion and code reformatting
  • User-customizable code snippets
  • Generation of bean accessors for properties
  • Smart import organization of classes and libraries
One feature I particularly like and frequently use is the CTRL+ - a key combination for "Go to Java Class." This brings up a window where developers can type in the name of a class or interface and navigate directly either to the source code or the JavaDoc.

Advanced tools found in Oracle JDeveloper, not generally part of the core of IDEs, include a code profiler to identify performance and memory hotspots, and an auditor that does quality control on Java source code - even on non-compilable code - according to predefined standards and guidelines. The profiler monitors and logs a running program's use of processor and memory resources and can be used to locate and correct inefficiencies. Developers can also use the profiler with the debugger and CodeCoach for efficient source code troubleshooting.

The march of Plain Old Java Objects (POJOs) seems unstoppable. With EJB 3.0, and particularly the Java Persistence API (JSR-220), as well as the Web Service annotations defined in JSR-181, a POJO can be easily promoted to an entity, persistently mapped to a database table or a Web Service simply by adding some annotations to the bean definition. JDeveloper will recognize these annotations and provide code completion support for them.

JDeveloper 10.1.3.1 also features wizards that can create entities (annotated POJOs) from selected tables and views in a database, or that can create a new entity. Currently there's no synchronizing support to realign entities and tables; however, given Oracle's leading role in the Dali Eclipse plug-in, I expect this feature to be added to a future version of Oracle JDeveloper.

The Web Service wizard allows easy publication of a POJO and selected methods as a Web Service; this wizard can add the JSR-181 annotations to the POJO, or create a WSDL document along with the WSIF binding definition.

Integration IDEb The biggest news with Oracle JDeveloper 10.1.3.1 is the Integrated Service Environment workbench. In particular, BPEL and ESB tooling is now fully integrated into JDeveloper.

There is a visual diagrammer with drag-and-drop component palettes and built-in wizards that help the developer design the BPEL processes. Wizards help create partner links for adapter services that link to external systems like (SOAP) Web Services, JMS, file system and FTP servers, MQ Series and databases (SQL or Oracle PL/SQL). The BPEL process is created by dragging BPEL activities such as pick, flow, invoke, reply, and assign to the diagram and configuring them through wizard screens. The invoke and reply steps are connected to the partner links with external services. A BPEL process can be deployed directly to the Oracle BPEL Process Manager from within the JDeveloper IDE (see Figure 1).

Oracle JDeveloper can also generate test cases for BPEL processes in which partner link response messages and workflow outcomes can be emulated prior to deployment in a production environment. This helps ensure that a process interacts with Web Service partners as expected by the time it's ready for deployment to a production environment.

In late October 2006, Oracle released its ESB as part of its SOA Suite. Oracle JDeveloper provides the design time for the ESB, and ESB router services typically consist of inbound services, routing and transformation rules and outbound services. The router service is constructed visually, using drag and drop, as well the same adapter service wizards used for developing BPEL processes. The transformation of messages in the ESB is done using an XSLT transformation. Oracle JDeveloper has a particularly useful tool that makes creating the XSLT document a simple, highly visual task, using drag and drop from source (inbound) XSD to the target XSD document.

Deploying the ESB is a two-click process using a predefined connection to the application server that hosts the ESB.

The first impression in developing ESB services is that it works very well - even though this is just a 1.0 release of the technology.

I2DE - Integrated IDE
Some integrated development environments (IDE) are more integrated than others. Oracle JDeveloper is much more than a Java programming tool. Integrated into its core Java IDE are a host of other IDEs such as:

  • XML development - visual editors for XSD, XSLT, XQuery, WSDL, and support for debugging XSLT
  • Web development - visual editors for CSS, as well as WYSIWYG editors for HTML, JSP, JSF (pages and config) and ADF Faces (a k a Apache MyFaces Trinidad), Struts (config) and Applets and an HTTP Analyzer for analysis of the packets sent across the wire for Web Services and Web applications
  • J2EE development - wizards for EJB, Web Services, and the built-in OC4J Application Server to deploy J2EE artifacts quickly, as well as very easy remote debugging of both Web and J2EE applications. JDeveloper also provides an IDE for Oracle TopLink - one of the premium tools for object-relational mapping
  • Database development - editors and diagrammers for tables, database browsers, SQL worksheets, data viewer for all JDBC-powered databases as well as programming and debugging support for PL/SQL - the Oracle database's stored procedural language
  • UML modeling - diagrammers for activity, class (with code synchronization), sequence and use case diagrams
  • Integration - visual modeling, testing. and deploying Web Services, BPEL processes, and ESB services
These various IDEs work together and are blended in the overall IDE. Together they share connections (database, application server, UDDI, WebDAV), a project definition with path-setup, library associations, and deployment profiles. Generic tools include a property palette, a structure window, debugger, and a task manager. JDeveloper integrates with various application servers - WebLogic, Tomcat, JBoss, OC4J, and Oracle Application Server for one-click deployment, and also provides powerful Ant integration (see Figure 2).

Check for Updates/Extensions
No matter how rich an IDE may be it's never complete out-of-the-box. Like other IDEs, Oracle JDeveloper has an automated mechanism for installing extensions - the JDeveloper term for what other IDEs call plug-ins - that's also used in updating the IDE itself with patches and service updates.

However, there's obviously only a limited set of extensions available for Oracle JDeveloper, since most of the functionality is already built-in and pre-integrated. While that may mean a little less choice, it most certainly saves a lot of time and money otherwise spent on acquiring the collection of plug-ins offering the same functionality only to find them far less well integrated than one would hope for.

Some useful extensions - that you might have expected to come pre-integrated - include unit testing with JUnit and support for AspectJ and Subversion.

Installing and upgrading extensions is effortless; however, downgrading or de-installing extensions requires developers to disable the extension and remove the archive from the file system.

Oracle Frameworks for Productive Java Development
Oracle JDeveloper is frequently known for its built-in frameworks, such as ADF Business Components - a SQL-oriented framework for mapping between Java applications and relational databases - and ADF Model - a data-binding infrastructure based on JSR-227. While these frameworks can add tremendous productivity, such as the drag-and-drop development of a database-bound JSF application, they are often regarded with some suspicion, because people see them as too proprietary and closed.

Every organization needs to make its own judgment about using these frameworks. They should take into account that these frameworks lower the barrier considerably for doing (productive) J2EE development, allowing less-experienced developers to make substantial contributions to development efforts. Furthermore, Oracle is using these frameworks to develop Fusion Applications, virtually guaranteeing their continued support and enhancement. Applications developed with these frameworks are J2EE-compliant and can be installed on various application servers.

Conclusion
The new 10.1.3.1 release of Oracle JDeveloper has a lot to offer with functionality that extends far beyond what one would normally expect from a Java IDE. One of its key strengths is its out-of-the-box richness, comprehensive feature set, and tight integration. No need for searching, acquiring, and installing a lot of plug-ins.

In the past there's been a lot of prejudice concerning Oracle JDeveloper: not being suitable for Plain Old Java development, only supporting proprietary Oracle development, being too expensive, etc. However, Oracle JDeveloper 10.1.3.1 is free, allows - but by no means necessitates - using Oracle-specific frameworks, and has scores and scores of features that even the most hardcore Java programmer will appreciate. Support for SOA, XML, Web, database, UML, and J2EE is an added bonus.

If you haven't looked at Oracle JDeveloper in a while, you'll definitely want to take a second look now. Installation only takes unzipping an archive. Oracle JDeveloper 10.1.3.1 is free and available for download at: http://oracle.com/technology//jdev.

More Stories By Lucas Jellema

Lucas Jellema (Oracle ACE) is CTO at AMIS, an Oracle, Java and SOA Technology Consulting firm based in Nieuwegein, The Netherlands. Apart from being a technical architect and workshop instructor, he is a regular presenter at international conferences on topics such as BPEL, EJB 3.0, AJAX and Java Server Faces, Oracle’s ADF (Application Development Framework) and productive application development in general.

Comments (2) 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
JDJ News Desk 01/03/07 05:59:54 PM EST

As the saying goes you never get a second chance at a first impression. In general, that's true, but if you've been thoroughly revitalized, matured, and cosmetically re-engineered, shouldn't you get a second shot at that first impression? I'd argue that's true of Oracle's Java/J2EE Workbench, Oracle JDeveloper.

JDJ News Desk 01/02/07 07:52:42 PM EST

As the saying goes you never get a second chance at a first impression. In general, that's true, but if you've been thoroughly revitalized, matured, and cosmetically re-engineered, shouldn't you get a second shot at that first impression? I'd argue that's true of Oracle's Java/J2EE Workbench, Oracle JDeveloper.

@ThingsExpo Stories
With 10 simultaneous tracks, keynotes, general sessions and targeted breakout classes, Cloud Expo and @ThingsExpo are two of the most important technology events of the year. Since its launch over eight years ago, Cloud Expo and @ThingsExpo have presented a rock star faculty as well as showcased hundreds of sponsors and exhibitors! In this blog post, I provide 7 tips on how, as part of our world-class faculty, you can deliver one of the most popular sessions at our events. But before reading the...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
In his session at @ThingsExpo, Steve Wilkes, CTO and founder of Striim, will delve into four enterprise-scale, business-critical case studies where streaming analytics serves as the key to enabling real-time data integration and right-time insights in hybrid cloud, IoT, and fog computing environments. As part of this discussion, he will also present a demo based on its partnership with Fujitsu, highlighting their technologies in a healthcare IoT use-case. The demo showcases the tracking of patie...
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend @CloudExpo | @ThingsExpo, June 6-8, 2017, at the Javits Center in New York City, NY and October 31 - November 2, 2017, Santa Clara Convention Center, CA. Learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
Have you ever noticed how some IT people seem to lead successful, rewarding, and satisfying lives and careers, while others struggle? IT author and speaker Don Crawley uncovered the five principles that successful IT people use to build satisfying lives and careers and he shares them in this fast-paced, thought-provoking webinar. You'll learn the importance of striking a balance with technical skills and people skills, challenge your pre-existing ideas about IT customer service, and gain new in...
Bert Loomis was a visionary. This general session will highlight how Bert Loomis and people like him inspire us to build great things with small inventions. In their general session at 19th Cloud Expo, Harold Hannon, Architect at IBM Bluemix, and Michael O'Neill, Strategic Business Development at Nvidia, discussed the accelerating pace of AI development and how IBM Cloud and NVIDIA are partnering to bring AI capabilities to "every day," on-demand. They also reviewed two "free infrastructure" pr...
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...
Almost two-thirds of companies either have or soon will have IoT as the backbone of their business. Though, IoT is far more complex than most firms expected with a majority of IoT projects having failed. How can you not get trapped in the pitfalls? In his session at @ThingsExpo, Tony Shan, Chief IoTologist at Wipro, will introduce a holistic method of IoTification, which is the process of IoTifying the existing technology portfolios and business models to adopt and leverage IoT. He will delve in...
It is one thing to build single industrial IoT applications, but what will it take to build the Smart Cities and truly society changing applications of the future? The technology won’t be the problem, it will be the number of parties that need to work together and be aligned in their motivation to succeed. In his Day 2 Keynote at @ThingsExpo, Henrik Kenani Dahlgren, Portfolio Marketing Manager at Ericsson, discussed how to plan to cooperate, partner, and form lasting all-star teams to change the...
SYS-CON Events announced today that LeaseWeb USA, a cloud Infrastructure-as-a-Service (IaaS) provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. LeaseWeb is one of the world's largest hosting brands. The company helps customers define, develop and deploy IT infrastructure tailored to their exact business needs, by combining various kinds cloud solutions.
The buzz continues for cloud, data analytics and the Internet of Things (IoT) and their collective impact across all industries. But a new conversation is emerging - how do companies use industry disruption and technology enablers to lead in markets undergoing change, uncertainty and ambiguity? Organizations of all sizes need to evolve and transform, often under massive pressure, as industry lines blur and merge and traditional business models are assaulted and turned upside down. In this new da...
SYS-CON Events announced today that Outlyer, a monitoring service for DevOps and operations teams, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Outlyer is a monitoring service for DevOps and Operations teams running Cloud, SaaS, Microservices and IoT deployments. Designed for today's dynamic environments that need beyond cloud-scale monitoring, we make monitoring effortless so you...
There are 66 million network cameras capturing terabytes of data. How did factories in Japan improve physical security at the facilities and improve employee productivity? Edge Computing reduces possible kilobytes of data collected per second to only a few kilobytes of data transmitted to the public cloud every day. Data is aggregated and analyzed close to sensors so only intelligent results need to be transmitted to the cloud. Non-essential data is recycled to optimize storage.
SYS-CON Events announced today that Conference Guru has been named “Media Sponsor” of SYS-CON's 20th International Cloud Expo, which will take place on June 6–8, 2017, at the Javits Center in New York City, NY. A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great dea...
“We're a global managed hosting provider. Our core customer set is a U.S.-based customer that is looking to go global,” explained Adam Rogers, Managing Director at ANEXIA, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at 20th Cloud Expo, Ed Featherston, director/senior enterprise architect at Collaborative Consulting, will discuss the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
"Matrix is an ambitious open standard and implementation that's set up to break down the fragmentation problems that exist in IP messaging and VoIP communication," explained John Woolf, Technical Evangelist at Matrix, in this SYS-CON.tv interview at @ThingsExpo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.