OOW16: What is new in ADF

It was not hard to find the ADF sessions this year at Open World, mainly because there was really only one session. Shay his session about new features in JDeveloper & ADF. It was worth seeing who would show up in the room and to be honest, it was quite crowded for an ADF session. 

JDeveloper came out in June 2016, however, this new JDeveloper is only a Patch Set, so mainly bug fixes and not much news compared to last year. Last year I already wrote a blog entry about the JDeveloper

ADF Business Components Triggers
These are simple hook points, in both the Entity Object level as wel as the View Object level, just like we know from the database. You can for example create a BeforeDelete trigger or an AfterInsert. 

You can write this in groovy, JDeveloper even has syntax support for that now and will also do a type check on the groovy code.

ADF Remote Regions
The ADF Remote Regions were already in JDeveloper as well, however, you might have done a small Proof of Concept and came to the conclusion not to use this. Well, the latest patch set included a lot of bug fixes on the remote regions, so if you ever had a good usecase for this it might be worth reconsidering. 

New DVTs
There are again some new Data Visualisation Tools as well:

Next Release
There was a little bird saying something about, however, I could not find anything official on this, so we have to sit tight wether we will get an other PatchSet or a release. 


OOW16: Oracle JET

Since last year at Open World, the Oracle JET team has been quite busy and it has been for the better. There has been quite some development, some great blogs and even a free online course (MOOC). A quick update of the cool features I have seen.

First of, lets start easy, you can see how your layout looks on different devices. No rocket science and not something shockingly new, but pretty cool they now support this.

When in the Cookbook, you can select the device on the top right, and you will see the preview directly in your browser.

Next to that, they have redone the Cookbooks, so the page looks new and refreshing, but that is not all, there is a new section 'Composite Component', in Cookbooks you can find it under Framework:

In here they introduce the concept of CCA: Composite Component Architecture. The concept of writing reusable pieces of UI, that can be embedded as an HTML element. This might sound familiar, this is something HTML5 and web components try to achieve as well.
The good news is that JET can now create HTML5 web components and even better, Oracle will put effort in making all current available JET components into HTML5 Web Components.

JB has created a cool example of how that can work. If you go to the advanced tab of the Composite Component page, you will see a memory game, like this:

You can find all the code to create this component on this page, however you can also consume it as a web component. JB explains this on his github account as well, you can see how the development effort will go down, mixing different JET components. After installing, when consuming the web component for the memory game, this is all the HTML code needed to embed on your webpage:

- The Oracle JET page
- Web Components
- JB’s github
- CCA : Composite Component Architecture
- Memory Game Page

JDeveloper Shortcut Keys: Reformat All Files in your Project

When writing Java code, it is a good practice to reformat your code before committing it to a source control system. In JDeveloper, you can put this in your save actions, however, JDeveloper will then also reformat all your XML code, this is not always what you want, plus it is a lot slower than reformatting only the Java code.

When in your Java file, you can use the right mouse menu, or the shortcut keys to reformat the java file you are currently working on, this is 'Ctrl' + 'Alt' + 'L' on windows or '' + '' + 'L' on mac.

However, when you change something in your code style, you probably do not want to go by every file individually to reformat the code. Good thing is that JDeveloper can also reformat a whole project at once.
This is not really well documented and it is not in the right mouse window either, but when you select a project in your Application Window and press the shorcut key for reformat, JDeveloper will reformat the whole selected project for you.

JDeveloper Shortcut Keys: Select in Application Window

In more complex projects with a lot of files, you can sometimes lose track of where the files are located. This can be helpful if you have your files saved in a logical package structure. After looking up a file, for example by using the Go to File shortcut key, it might be helpful to know where this file is located.

Well, in JDeveloper there is a shortcut key to find the file in your Application Window. This is 'Alt' + 'Home' on windows or '' + 'Home' on mac. 

As you can see the file is selected and displayed in the Application Window.

Collapse All in the Flow Trace

With more complex BPM and/or BPEL processes, debugging the flow trace can be kind of slow. However, if you know what you are looking for, there might be a trick to help you get where you want to be quicker.

The flow trace can be very long and scrolling through it, or even scrolling all the way to the end can take quite some time. But there is a right mouse menu if you click the icons on the left. So if you mouse click the mediator we see, called ‘RequestHandler’, there will be a popup menu: 

If you select the ‘Collapse All Below’ option in the menu, it will as you might expect, not only collapse the mediator, but it will collapse all the children and their children. Meaning, once collapsed, you can expand them one by one, going to the correct subprocess where you want to be. 

This means, in complex processes, you can get to where you want to be a lot quicker, because the flow trace performance a lot better with all the items collapsed.  

JDeveloper Shortcut Keys: Go To File

I have been noticing that a lot of developers are either struggling with finding files in JDeveloper or taking a long time to open all the packages and browsing to the files. However, JDeveloper has a lot of shortcut keys that come in handy.

First of, a shortcut key to 'Go To Java Type', I think most developers know this one. It is the 'ctrl' + '-' on windows or '⌘' + 'J' on mac, you will get this window:

However, did you also know the search is CamelCaseSensitive? It is a very neat trick, imagine you have connected your ADF sources and want to look up the PageFlowScopeMap in the 'org.apache.myfaces.trinidadinternal.context' package.
You can open the 'Go to Java Type' screen and start typing page, but a lot of java classes will come up:

As said the search box understands CamelCase, so if you instead start typing the fist capital of each CamelCase word, in this case 'PFSM' (PageFlowScopeMap) JDeveloper will understand:

How cool is that?

Now this is not where it ends, instead of only searching for Java Types, you can search over all your files in JDeveloper, using the shortcut key: 'ctrl' + 'alt' + '-' on windows or '' + '' + '-' on mac. The following window will popup:

In here you can search for any file, but again you can also search CamelCase, for example, in case I want to search my file:

Now, in both windows you can also use wildcards (*), however the CamelCase will not work in combination with a wild card anymore.

Goodbye & Thanks to MN; Hello TFG

Time flies when you’re having fun, it feels like I only recently started working at MN, but truth be told, it is already 9 years ago. I started as a Junior Oracle Developer at MN after my bachelor degree and in these 9 years I became an all-round Fusion Middleware developer and solution architect within this company.

A great company, lovely colleagues and always a technical challenge ahead. I could certainly enjoy another 9 years at this company, however, it is time to take the next step. Not because I do not enjoy working at MN anymore, but because I am ready for a new challenge.

I want to thank MN for all the great times and for giving me the opportunity to develop myself in all these years.

What new challenge lies ahead? After some consideration, I have decided to become self-employed as an independent contractor as part of the The Future Group cooperative

I like to give a special thanks to Wilfred, who introduced me to The Future Group and over the years became my partner in crime and a great friend.  

I am very excited to be part of this group of Oracle Specialist and work closely with the people I have come to appreciate and respect within the community. 

Microsites: Add a Map Component and Publish your Microsite

When continuing to adding components to the website, I added a Map component. Open your component palette in the Sites Cloud and drag and drop the map component to your site.

To make sure the maps shows the right place, we need to add the location. The easiest way to do this is to go to google maps, click on the location you want to display in your map and copy that location.

Once copied, you can enter this in the Map settings, adjust the zoom as you wish and select the other options. For example, I want to show a Display Marker, so I tick that checkbox.

Save your modifications, this will bring you back to the Sites Overview page. Now you can select to change the status of the site from Offline to Online. If you do this, you will get a warning poup that the site will be publicly available.

After this, you should see the site status being changed to Online and the url of your website is visible.

If you click the URL, it will bring you to the website.

Nothing too fancy yet, but you can see how you can work with different components to build your website based on the Documents you have added.

Microsites: Interact with DCS using the ipad app

You can use the Oracle Documents ipad app to interact with the Documents Cloud Service. Go to the app store and search for ‘Oracle Documents’, you will find the Oracle Douments application, get and install the app to your ipad.

The app would like to send you notifications, after that you will also have to accept the License Agreement.

When the app starts up, you will get a quick tutorial to tell you the basics or you can skip this.

In the sign in screen, you have to enter your e-mail address and password again. You will also need the Server URL, just like you did when installing the synchronization client.

After signing in, you are in the app and you can browse your documents.

By default the app does not have the security code on. It is wise to put this on, for this go to the settings page.

Click on the passcode lock and enter a passcode and select to unlock through TouchID if your device supports this.

That is all it takes to set up the app. You can now start using the Documents Cloud from your ipad.

Microsites: Start building your site in the Cloud!

So after requesting the services, and installing the synchronization client, you can start building your site. When setting up the synchronization client I added some documents about my house, pictures, descriptions, maps, stuff like that.

Now with the help of Sites I will use the files that are synchronized to the Documents Cloud to start building a webpage about my house. After you login to your Cloud Services, go to the Service Console.

 Use the left side menu to switch to the Sites part of the console.

Follow the wizards that will help you set up your site. We start with creating a new site.

We do not have any themes yet, so we create a new theme as well.

I selected the Basic theme to start with.

Give your site a name and optional description.

Select edit, you will get a pop up to give your update a name and after that you will be brought to the edit modus of your

Use the Toggle in the upper right corner to switch from Preview to Edit modus, so you can start dragging and dropping components.

 I choose to delete the whole site tree, because I want to start with just one page on my website.

In the left hand menu, select the second tab to start adding components. I drag and dropped a gallery grid on the page.

Go to the settings of the gallery.

Click the images button to add your images to the gallery.

Now the file picker will open and you can select files that you have previously synchronized to your Documents Cloud folder.

After adding the images, I also drag and dropped a document as a component on the page.

Once again, use the file picker to select a document to display under the pictures.

You will now see the images on top of the site, with the document shown below.

This website is not very fancy, but it gives you an idea of how you can start building your website using the component palette and the integration between Documents & Sites Cloud.