Tuesday Dec 10, 2013

Eclipse and Hudson at the Googleplex

If you're in the area (Silicon Valley) and interested in Hudson, you may want to checkout the Eclipse Day event at the Googleplex next Wed, Dec 18.  Check out the details here.

Wednesday Oct 16, 2013

Harnessing the Power of WebLogic and Coherence, November 5, 2013

Register now for OTN Virtual Developer Day
Harnessing the Power of WebLogic and Coherence, November 5, 2013

Join us for Oracle Technology Network's Virtual Developer Day, a new, free, hands-on virtual developer workshop. Java Developers and Architects can attend live, moderated sessions and hands-on labs to learn how to leverage existing skills to take advantage of features in Oracle WebLogic and Oracle Coherence, core components of Oracle's Cloud Application Foundation.  

There will be live chats w/ Oracle tech staff throughout the event.  Check it out.

Friday Aug 02, 2013

OEPE Coherence Grid Archives (GAR) Support


OEPE 12c (12.1.2) release supports Coherence Grid Archives (GAR) application development and deployment to WebLogic Server 12c (12.1.2). A Coherence application is a set of artifacts packaged in a jar called Coherence Grid Archive (.gar), which can be deployed to WebLogic Server 12c as a stand-alone module or bundled in an EAR project. This tutorial demonstrates the various GAR features available in OEPE.

Development Environment Set-up

 OEPE 12c (12.1.2)
 From OTN, download and extract OEPE
 Oracle WebLogic Server 12c (12.1.2)
 From OTN, download and install WLS RT

GAR Project Configuration

Like in any application development, the first step is to create the project that contains required configuration files and libraries.

  • Launch eclipse.exe and switch to a new workspace
  • Switch to Java EE perspective
  • A new wizard is provided to create GAR project
    • From the File | New menu launch "Oracle Coherence Project"
    • Type in a name, "GARDemo"
    • Create a new 12.1.2 RT selecting WLS home (ex: C:\12.1.2-wls-home\wlserver)
    • NOTE: You can create a standalone GAR project or bundle in an EAR
    • For demo purpose, make sure to check "Add project to an EAR"
    • On the project wizard, navigate to Library management page and note the listing of "Coherence Library in Fusion Middleware Install". And also the option to generate the required configuration files.
    • Click Finish
  • In project explorer, notice the generation of default coherence configuration files and library jars
  • Also note the creation of sample web project that can be used as a view module

Configure Coherence project

  • Download and extract CoherenceGARSource.zip to GARDemo | src folder (if required, refresh the project root)
  • Define Application Lifecyle listener
    • In Project Explorer, GARDemo | src | META-INF, double click on coherence-application.xml
    • NOTE: The coherence application file is based on Sapphire based xml editor
    • Check Application lifecycle listener, browse and select "LifeCycleReactor"
    • Save and close coherence-application.xml file
  • Configure Coherence Portable Object Format (POF)
    • In Project Explorer, GARDemo | src, open pof-config.xml
    • Copy-paste the content of <user-type> , <allow-intefaces> and <allow-subclasses> from sample file
    • Save and close pof-config.xml file
  • Export "Oracle Coherence Library"
    • In Project Explorer, right click on GARDemo | Properties | Java Build Path & switch to "Order and Export" tab
    • Make sure to select "Oracle Coherence Library"
    • FYI: We will need the libraries to reference coherence classes in web project 
    • Click OK and dismiss the properties dialog

Configure Web project

  • Add JSF Facet and define coherence deployment assembly
    • In Project Explorer, right click on GARDemoWeb | Properties | Deployment Assembly
    • Click Add and select GARDemo project
    • NOTE: The coherence module is recognized as a GAR (.gar) project
    • Click Apply
    • On the properties dialog, select Project Facets and check JSF Facet version 2.1
    • Click OK and dismiss properties dialog
  • Download and extract CoherenceGARWebSource.zip to GARDemoWeb | src folder (if required refresh project root)
  • Download and extract WebContent.zip to GARDemoWeb | WebContent folder

Deploy Coherence application

  • In the Server view, create a new 12c server configuration
  • NOTE: The server configuration wizard provides an option to create new domain
  • Like any other JSP file, right click on ContactList.jsp and run on 12c server
  • On the Browser, click on "Insert 20 Random Contacts" and generate contact list
  • Optional: You can also exercise other operations, Create, Delete and Update Contact info
  • In the Server view, right click on GARDemoEar and remove the project (un-deploy) from the server

GAR Deployment Support

  • Similar to other Java EE module, the GAR project can be deployed in any of the three WLS supported modes
    • Split source (default mode, also known as Virtual deployment)
    • Exploded archive (packaged in a EAR)
    • In addition to local server, the GAR project can also be deployed to remote server instance

Packaging GAR Project

  • Similar to WAR, the GAR project can be added to WLS 12c instance as a stand-alone module (supported only in Exploded archive)
  • In the above demo we packaged GAR module in an EAR project
    • On creating GAR project bundled in an EAR, the weblogic-application.xml is auto configured with GAR module
    • A validation in weblogic-application.xml ensures only one GAR module can be bundled in an EAR
  • NOTE: As a special case, GAR project bundled in EAR can be deployed both as a stand-alone module and packaged in EAR

Export project as GAR module

  • Similar to Web project .war file, a GAR project can be exported to a .gar file


Introduction to GAR

Tuesday Jul 30, 2013

What's New In OEPE

Oracle Enterprise Pack for Eclipse is now available for download from the Oracle Technology Network (OTN). This is a significant feature release which introduces new design time tools for a variety of technologies including; Oracle ADF, ADF Essentials, Apache Maven, and RESTful Web Services.

More details of this release can be found below:

  • Oracle ADF Support - OEPE fully supports application development with Oracle ADF 12.1.2. Finally, JDeveloper and OEPE users can develop ADF applications against the latest version of the framework on the latest and greatest version of their IDEs. All of the existing ADF design-time features have been updated for ADF 12.1.2 like ADF Faces and DVT tag support, AppXRay validation of ADF artifacts, ADF Task Flow editors, Data Control generation, ADF Bindings tooling, Refactoring, Debugging, and more. OEPE design time tools will take advantage of new standards in ADF 12.1.2 like facelets for page templating and use of the Sparse Data Control. Of course, OEPE still supports development with older versions of ADF 11gR1 as well.

  • Oracle ADF Essentials Tooling - In addition to ADF 12.1.2, OEPE users can also develop ADF applications using the free ADF Essentials. All of the existing ADF tools for WebLogic Server are also available when using ADF Essentials and GlassFish Server. OEPE includes additional features to make the ADF Essentials installation and configuration much easier with GlassFish.

  • Maven support for Fusion Middleware 12c - This release provides additional support for Maven build tools in a few different ways. Eclipse m2e and m2e-wtp are now included by default so that customers can create Maven-based projects in Eclipse, edit pom files, and manage their Maven libraries. Customers that use the new Maven Synchronization utility for Oracle Fusion Middleware 12c to manage their Oracle jars can configure their OEPE projects to use the new Maven library repository. A new ADF Project Archetype is shipped with OEPE which is useful for laying out a basic ADF applications in a Maven structure. Customers can also use the newly updated WebLogic Server Maven plugins with their Maven-based projects within OEPE.

  • JAX-RS and REST Design Time Tools - New design-time tools for JAX-RS are included in OEPE OEPE enhances the existing Eclipse WTP JAX-RS facet to add additional project configuration options, Jersey library management, and deployment descriptor configuration for JAX-RS. New wizards to create RESTful web service classes and REST Clients are included, a new REST Annotations view provides a easy configuration to manage REST annotations, and the Java Editor is enhanced to provide code completion and validation for JAX-RS annotations. JAX-RS classes can also be run against the target application server through the standard Run As > Run On Server action.

  • ADF Data Control Editor - A new rich editor for ADF Data Control configuration is now available. Clicking on your *.dcx will launch the editor which can manage Data Control Configurations, define List of Values, configure List Bindings, and modify the Data Control structure definition.

  • New Oracle Installer for OEPE and FMW 12.1.2 - The OEPE installer has moved to a new installer technology. In addition to OEPE, this new installer bundles WebLogic Server 12.1.2, Coherence 12.1.2, and Oracle ADF 12.1.2. This installer can be obtained from both the OEPE download page and the WebLogic Server download page.

For more information check out the Oracle Enterprise Pack for Eclipse OTN page and check back on this blog for more detailed walk throughs of the new OEPE 12.1.2 features.

Thursday Jul 11, 2013

New Oracle Enterprise Pack for Eclipse 12c (12.1.2) is Now Available!

In tandem with the new Oracle Cloud Application Foundation release today, OEPE 12.1.2 is perfectly synced with the latest release of Oracle WebLogic 12.1.2 and Oracle Coherence 12.1.2.

New and unique support for ease of design, development, configuration and deployment into Oracle Coherence:

  • Rich Deployment Descriptor editors including form based wizards and design time validators
  • Context sensitive help links directly into Coherence documentation
  • New tools for Coherence Managed Servers including project wizards for Coherence Grid Archive (GAR)
  • Packaging and deployment directly to WebLogic Server or Coherence Servers
  • Ability to deploy a GAR directly, embed as a library in other applications, or deploy as a shared library

Newly update WebLogic Server Adapter which provides unmatched access and ease of configuration for the Oracle WebLogic Server including:

  • Run/Deploy/Debug artifacts both locally and remotely
  • Detailed support for management of shared libraries
  • Ability to utilize FastSwap, which provides the ability to reload certain classes/components of an already deployed application
  • Direct access to management of WebLogic SCA tooling
  • Ability to configure and manage WLST (WebLogic Scripting Tool) artifacts
  • Tie in to the WebLogic MBean Browser

And don’t forget, this is all on top of the recent OEPE update for Java EE7!

Sign up for the official Cloud Application Foundation launch here

More info and download for Oracle Enterprise Pack for Eclipse is here

Tuesday Jun 25, 2013

Getting Started with GlassFish 4 and OEPE

Oracle Enterprise Pack for Eclipse introduces new support for GlassFish 4.0, the reference implementation of Java EE7. 

Getting started with GlassFish 4.0 in Eclipse couldn't be easier. Follow these short steps to get GlassFish 4.0 setup so you can start developing, deploying, and debugging your Java EE7 applications.


GlassFish 4.0

Oracle Enterprise Pack for Eclipse from OTN or Eclipse Marketplace

Setting up the server connection

In the Servers view, click to add a New > Server .

Select GlassFish 4.0 from the list of supported server configurations.

Pick your GlassFish installation directory (usually <glassfish 4>/glassfish) and select your domain.

After you click Finish you should now be setup to launch Glassfish 4.0 in normal and debug mode within Eclipse as well as associate projects for deployment through the Add and Remove wizard.

Using GlassFish tools in Eclipse

GlassFish server tools provide some useful information about your running GlassFish 4.0 environment.

Resources displays current resources deployed in the domain including your JDBC Connection Pool and JDBC Resource names. I find this extra bit of information useful when working with JPA.

Deployed Applications shows the current active deployments in GlassFish which can be undeployed as needed from within Eclipse.

Deployed Web Services provides information about SOAP-based web services deployed in this domain.

Also with the running server are quick launch links to open the Administrative Console, Server Logs, and the GlassFish Community Site all within Eclipse's embedded browser.

Wednesday Jun 12, 2013

New Java EE7 and Glassfish Support in OEPE

Oracle Enterprise Pack for Eclipse is now available for download from OTN and Eclipse Marketplace and includes new tooling for Glassfish and Java EE7.

The Glassfish Server tooling plugins have been redesigned in OEPE with a focus on performance, stability, and polish and include the following features:

  • New tooling architecture improves stability and performance when developing applications against Glassfish
  • Support for Glassfish 3.x and now 4.0
  • Target new projects against Glassfish Server and create appropriate deployment descriptors (glassfish-ejb-jar.xml, glassfish-web.xml)
  • Deploy and debug Web and Enterprise Applications directly out of the Eclipse workspace
  • View and manage deployed Applications, Web Services, and Resources on active Glassfish servers
  • Quick access to Glassfish Admin Console, Server Logs, and Glassfish Community Sites from within Eclipse

Eclipse Kepler (4.3) is the first release of Eclipse to support Java EE7 and, when combined with OEPE's Glassfish 4 support, Eclipse users get a development environment to develop, run, and test Java applications with the latest spec.  Some of the new feature enhancements in Eclipse Kepler which enable Java EE7 development are as follows:

  • Eclipse Kepler (4.3) adds new design time support for Java EE7 through the Web Tools Platform (WTP)
  • Updated Project Facets and Wizards for new Java EE7 spec levels (ie: Servlet, EJB, JPA, Web Services, JAX-RS, JSF)
  • Develop Java EE7 applications in Eclipse and run, deploy, and debug with Glassfish 4

For more information on the latest Java EE7 features and announcements, check out the Java EE7 blog.

Additional information about OEPE can always be found on the OEPE OTN page.

Thursday May 30, 2013

New WebLogic Management Tools Webcast is Now Available

 If you missed Greg Stachnick's webcast, no worries!  The recording is available on demand here.  

The best eclipse based tools for the Oracle platform simply gets better and better.  Download Oracle Enterprise Pack for Eclipse here.

Friday Mar 29, 2013

Back from a Succcessful EclipseCon Boston

Good to be back home from a successful EclipseCon Boston. (Duke approved!) We met some good folks, learned of some interesting projects/technologies and quaffed a few delicious local beers.  After a tour down Salem street in the evening, I can definitely see why locals (and tourists), love Boston. (I still wish we could have made it into Neptune Oyster, but the wait was measured in hours - maybe next time.)   I don't follow hockey, but Bruin fans, tough loss to Montreal.  My Canadian co-workers were cheering (quietly) at the bar... as we were surrounded by Bruin fans.  And well, you know - polite and all that.  

EclipseCon 2014 - perhaps next year, it will be San Francisco?  Cheers.

Thursday Feb 21, 2013

ADF Application Development Using OEPE v12.1.1.2


OEPE has been iteratively providing more ADF tooling with each release. The latest v12.1.1.2 release provides features that allows us to develop a fully functioning ADF application. The following tutorial describes HR sample application development using ADF features supported by OEPE release v12.1.1.2. It covers some of the key ADF toolings like Data Control generation on EJB, generation of Data First & UI First scenario, Page Definition editor, ADF Table generation, generation of DVT graph and some of the cool AppXray features.

Development Environment Set up

OEPE v12.1.1.2
From OTN, download and install OEPE w/ WLS Runtime
Oracle DB 10g / 11g
Use the sample HR schema bundled in Oracle DB

Create ADF Application

  • Start Eclipse with an empty workspace
  • Switch to Java EE perspective
  • Launch File | New | Oracle ADF Application wizard
  • Type in application name, "HR" 
  • Create a new run time selecting WebLogic Server 10.3.6 instance 
  • Launch "New JPA Project" wizard, click on Modify... button and select utility module facet
  • On the JPA project wizard, click Next and navigate to "JPA Facet" Page
  • For platform, select "EclipseLink 2.1.x" and verify the selection of "WebLogic System Library (Oracle TopLink 11gR1)" implementation
  • Click on "Add connection..." and create a new 10g/11g "Oracle Database Connection"
  • On the JPA project wizard, click on "Override default schema from connection" and click Finish
  • NOTE: Click "No" on switch perspective dialog
  • On the ADF Application wizard, click Finish

Figure 1: Oracle ADF Application wizard

Generate Data Model

  • In Project Explorer, right click on "HRModel" | New | "JPA Entities from Tables"
    • On "Select Tables", pick "Employees" & "Department" table and click Next
    • Retain default "Table Associations" and click Next
    • On "Customize Default Entity Generation", type in a package name and click Finish
  • Open Employee.java and update with @NamedQuery(name="findAllEmps", query="select e from Employee e ")
  • Open Department.java and update with @NamedQuery(name="findAllDepts", query="select d from Department d")
  • Save the files
  • Generate Data Control artifacts
    • In Project Explorer, right click on "HRModel" | New | Other | Oracle | Application Development Framework | select "ADF Data Model Components" and click Next
    • Type in package name, ex: ejb.beans
    • Type in class name, ex: "HRModelSessionEJB" and click Next
    •  Double click on "Employee" entity and move it over to selected panel
    • Click Next, retain default object type "ADF Data Control" and click Finish

Figure 2: ADF Data Model Component wizard

Iterative Data Control artifact generation

  • In Project Explorer, expand HRModel | src | ejb.beans and right click on "HRModelSessionEJB" | Model Components | Edit Session Bean Facade ...
  • On Edit Session Bean Facade, double click on Department and move it over to selected panel, click Finish
  • In Project Explorer, right click on HRModel | src | model | "HRModelSessionEJB" | select Model Components | Create ADF Data Control

Figure 3: Edit Session Bean Facade and ADF Data Control

Data First, Department Id artifact generation

  • Create ADF page
    • In Project Explorer, right click on "HRWeb" project | New | JSP File, type in file name "emplist.jspx" and click Next
    • On template selection page, select "ADF Rich Faces Page - Three Columns (xhtml, xml syntax)" and click Finish
    • In the JSP source view, modify the facet order, i.e. move "f:facet name=start" before "f:facet name=center"
  • Generate ADF OutputText tag on departmentId artifact
    • In the JSP source view, place the cursor within "f:facet name=start" tag
    • On the Palette view, switch to Tags tab, expand ADF Faces | DND "Panel Form Layout" and click Finish 
    • On the Palette view, switch to Data tab, expand HRModelSessionEJBLocal | findAllDepts, DND "departmentId" within panelFormLayout as "Text | ADF Output Text w/ Label"
    • save the page

Figure 4: Data First, DND data control artifact

Define artifact in Page Definition editor

  • In Project Explorer, right click on emplist.jspx | Open Page Definition
  • Define new attribute value binding
    • On Page Definition editor, click on + to add new Binding
    • On the New Binding dialog, select "attributeValues" and type in id "deptName", click OK
    • On the details panel, click on "Browse" button
    • On "Rebind Attribute selection", expand findAllDepts and select "departmentName", click OK
    • NOTE: The Page definition editor validates in-valid/undefined binding or iterators.
    • save and close page definition file

Figure 5: Page Definition editor

UI First, Department Name artifact generation

  • Switch to emplist.jspx and place the cursor after closing panelLabelAndMessage tag
  • On the Palette View, switch to "Tags" tab
  • Expand "ADF Faces" node and DND "Panel Label And Message" tag
  • Click on the binding button next to "Label" field and select "bindings.deptName.hints.label", click Finish
  • In the source view, place the cursor within panelLabelAndMessage tag and from Palette view, DND "Output Text" tag
  • Click on the binding button next to "Value" field and select "bindings.deptName.inputValue", click Finish

Figure 6: Panel Label & Message and Output Text tag editors

Generate ADF Tag from Data Palette view

  •  In the JSP source view, place the cursor after closing panelLabelAndMessage tag (i.e. after deptName)
  • On the Palette view, switch to Data tab, right click on "findAllDepts" | Insert in the page | ADF Navigation | Navigation Buttons

Figure 7: Data Palette | Data control artifact context menu item

Generate Employee Table

  •  In the JSP source view, place the cursor within f:facet name=center tag
  • On the Palette view, switch to Data tab, DND "findAllDepts | employees" as Table | ADF Table...
  • On the Table configuration page, select columns EmployeeId, FirstName, LastName and PhoneNumber, remove the remaining entries and click Finish

Figure 8: ADF Table tag editor

Modify Employee Table behavior

  •  In the JSP source view, place the cursor on table tag
  • On the Properties view, click on "Edit Component Definition"
    • Check "Read-only Table", select "Single row", and "Enable sorting"
  • Click Finish and save the page

Figure 9: Edit Component definition editor

Generate DVT Graph

  • In the JSP source view, place the cursor within "f:facet name=end" tag
  • In the Data Palette view, right click on findAllDepts | employees | Insert in the page | Graph | Bar Graph
    • Retain default Bar Graph Type and select second layout, click Next
    • Bars: Click "Add attribute" and select "employeeId"
    • X axis: Click "Add attribute" and select "salary", click Finish

Figure 10: Bar Graph wizard

Smart editor, Graphical representation of Binding references

  •  In the JSP source view, place the cursor on jsp:root tag
  • On the Properties view, switch to "Bindings" tab
    • You can navigate to the binding definition, iterator or referenced tag on the JSP page
    • Also, you can place the cursor on individual tag to view the corresponding binding references

Figure 11: Smart editor binding references

AppXaminer, Graphical representation of ADF artifact references

  • In Project Explorer, right click on emplist.jspx | Show AppXray Dependencies
    • The AppXaminer displays all web artifact references in JSP page, ex: references to resource bundle, image files, adf binding references, jsf managed bean references.
    • For each artifact reference, you can navigate deeper to source file, ex: in case of adf binding, you can navigate all the way up to JPA bean class.
    • The reference link on AppXaminer provides navigation to respective source file
    • In addition to JSP, the AppXray visualization works on other web artifact files, ex: taskflow, page definition, data binding, data control, managed bean or resource bundle file

Figure 12: AppXaminer visualization

Deploy and run ADF application on WLS P5 RT

  • In the Servers view, click on "new server wizard..." link
  • Select WLS PS RT, click Next
    • On "Specify a WebLogic domain directory" page click on create button and create a domain with JRF extension
    • On New Server dialog, click Finish
  • Start the server
  • NOTE: The eclipse internal browser has a known issue with DVT tag rendering, try the following step to use external browser
    • Window | Preferences | General | Web Browser | switch to "Use external web browser" and select Firefox / IE / Chrome
  • In Project Explorer, right click on emplist.jspx | Run As | Run on Server, select WebLogic Server 10.3.6 domain and click Finish

Figure 13: WLS server configuration and RT output of emplist.jspx


Tuesday Feb 05, 2013

New Prime Number

Off topic but geek worthy.

Congrats to Mersenne Prime Search team in finding new prime number ! Over 17M digits long! (2^57,885,161-1)


Tuesday Jan 22, 2013

Join Us at EclipseCon Boston 2013

Oracle is a Gold sponsor for EclipseCon Boston 2013 March 25-28.  

If you're planning to go, stop by our booth and join our sessions. We'll have a number of sessions and events including:

  • Hudson as an effective Agile ALM Tool (Winston Prakash)
  • Large-Scale Adoption of Hudson (Jim Clark)
  • Dali Tooling for Dynamic Persistence and NoSQL (Neil Hauge)
  • EclipseLink: Beyond Relational and NoSQL to Polyglot and HTML5  (Shaun Smith)
  • A couple of presentations covering Oracle Enterprise Pack for Eclipse (Greg Stachnick)
  • Our BoF event: Oracle & Eclipse,Djava Unchained - "the 'D' is silent"


Wednesday Dec 05, 2012

The New OEPE is Out - ADF Development and More

Yes you are reading it right. Having announced just last week the general availability of our OEPE release which includes support for developing applications to the Oracle Cloud. Today we are happy to announce the release of OEPE 12c ( which includes various improvements for Webservices policies and security, and new features for implementing ADF applications in Eclipse Juno (3.8.1 and 4.2.1) as well as, bug fixes for other areas of the product - all of the above on top of Oracle Cloud support from the previous release.

Many of the new features on this release have been added based on the feedback that we got from the ADF community, so, many thanks to you all and please, keep them coming! The main new features for this release are:

  • ADF Bindings support on Taskflow activities on the diagram.
  • Support for multi-node tree component bidings.
  • Automatic ID generation for ADF Faces components.
  • Support drag-n-drop of components and bindings into the page outline in addition to the regular jsp editor.
  • Improved Webservices policies and security. 

You can download the new versión from here. Remenber that you can send us your feedback or post your questions on our forum on OTN

The OEPE Team. 


The focus of this blog is on Oracle Enterprise Pack for Eclipse (OEPE) and Oracle's involvement in the Eclipse community. Visit us for information on releases, tips and tricks related to Eclipse, and general Eclipse community information.


« March 2015