Key take-aways from the Oracle PaaS Cloud announcements – Integrate, Accelerate, Lead

imageMonday June 22nd was the launch date for Oracle for 24 (and more) Cloud Services. June is traditionally an important month for Oracle when it comes to product launches and important announcements. This year is the same in that respect. The announcements came in a many-hour live webcast including a 45 minute presentation by Oracle CTO Larry Ellison (see videos from Oracle Cloud Platform Launch). I have harvested some of the most relevant slides (more...)

Oracle Cloud Platform Launch Event on Monday June 22 – Integrate, Accelerate and Lead with the Oracle Cloud Platform

On next Monday June 22nd, our executives will be unveiling the new Oracle Cloud Platform. We encourage all employees, customers and partners to attend. The details including registration are available here.

Leveraging the Oracle Developer Cloud from Eclipse by W Brian Leonard

This entry looks at how Eclipse, in combination with the Oracle Developer Cloud Service, can be used to support the complete application lifecycle, from inception to production. In between we'll create bugs, create code branches, initiate code reviews, and merge code branches. We'll also slip in some continuous integration and continuous delivery. This is often also referred to as DevOps.

Check out Brian's full entry here.

JEE : Using EJB and Context annotations in a JAX-RS Provider class

A lot of new annotations have been introduced since the JEE6 spec. Before we had EJBs and servlets to cover most of our server-side objects in a JEE application. But in JEE6, CDI and JAX-RS have been added, along with a few other JSRs that are implemented using annotations. This results in a long list of annotations, where – in my opinion – it is not always clear which one to use, nor to understand how they work together.

In this blog, I would like to (more...)

Interacting with JMS Queue and Topic from Java SE

This article is just a quick post of some code I want to have easy access to. It runs in Java SE – outside any container in a stand alone JVM. It creates a connection with a JMS Queue. One class sends messages to the Queue, the other class registers as a listener and consumes messages from a different queue.

I have created the code in JDeveloper. It runs stand-alone and connects to a WebLogic (more...)

Eclipse on Fedora

While I previously blogged about installing Netbeans 8, some of my students would prefer to use the Eclipse IDE. This post shows how to install and configure Eclipse IDE, include the mysql-connector-java.jar, and write Java to access the MySQL.

You can download Eclipse IDE and then open it in Fedora’s Archive Manager. You can use the Archive Manager to Extract the Eclipse IDE to a directory of your choice. I opted to extract (more...)

Developer Cloud Service: Develop, Collaborate & Deploy in the Cloud

This session is part of the Oracle Developer Cloud Webcast series and provides an overview, demonstration & real-world use case of Developer Cloud Service. Check it out to see how DevOps in the cloud can help you to build better applications quicker and cheaper. Session Video: Developer Cloud Service: Develop, Collaborate & Deploy in the Cloud

Netbeans 8 – Fedora

Some of my students want to use the Fedora image that I built for my database classes in my Java software development life cycle course. As a result, they wanted a Java development environment installed. I examined JDeveloper 11g ( and 12c (12.1.3) but resolved on the more generic Netbeans 8 (8.0.2) IDE.

JDK 7 with Netbeans 8 Download

You can download the generic Netbeans (more...)

Jumpstarting Development on the Cloud – Part 2 : Packaging and Build

This blog entry by Oracle's A-Team will show you how to use Maven to compile, package and deploy a java application to JCS-SX. Check it out here.

The Java Council: First vJUG Podcast. Microservices, Events and all Java.

I was invited to join the vJUG and give a talk about Large Enterprise Java Architecture and as a follow-up I also had the chance to be among the first guests of the newly created Virtual JUG Podcast.

Recording the Podcast with Hangouts, Audacity, Skype and Google Docs.
Featuring regulars Simon Maple, Trisha Gee and Martijn Verburg with guests Markus Eisele and, Daniel Fullarton. The team did a great job guiding the guests through the (more...)

Updating SQL Developer to use newer Java version

I was being teased by SQL Developer.

Everytime I started it came nagging about that it was being forced to live in an old Java version called jdk1.7.0_45 and that is was not feeling happy about it.
So, I should remedy this, I thought to myself.

First visit was, inspired by some search-work on the WWW, a file called product.conf. Which offered two possiblities:


SetJavaHome to some logical location
SetJavaHome to (more...)

Access Denied when logging in to OSB 12c console

The Oracle SOA Suite 12c quick start is an excellent way to get started with all the new features of 12c. I imagine it must be frustrating when you log in to http://localhost:7101/servicebus and are confronted with an 401 – Access Denied error message. Rest assured, there is nothing wrong with your credential configuration. The cause is likely much more simple; you use the wrong Java version.

Although the certification matrix for FMW 12.1. (more...)

Quick and dirty test for thread leakage in java

I was looking at a bit of code was leaking class loaders when deployed to tomcat - so I wanted to quick rule out that a background Thread was holding onto the loader. Pain by eye, it is quite easy with a few unix commands to process the stack trace, filter for the lines that contain the thread name, filter for just the thread names and sort:
sudo -u tomcat jstack 1853 | grep "  (more...)

So you’ve dumped 150 GiB of JVM heap, now what?

150 GiB worth of JVM heap dump is laying on hard drive and I need analyze specific problem detected in that process.

This is a dump of proprietary hybrid of in-memory RDBMS and CEP system, I'm responsible for. All data are stored in Java heap, so heap size of some installation is huge (400 GiB heap is largest to the date).

Problem of analyzing huge heap dumps were on my radar for some time, so (more...)

Découverte : Java Cloud Service Workshop

Marcus Lagergren 20 years of Java In Review

We know each other since some years now. And I am very very pleased to see, that we finally could make it happen to have him speaking at JavaLand as a Keynoter. And what would be better for a JVM veteran than talking about this years anniversary: Happy Birthday Java!
Thank you Marcus, for taking the time!

I am looking forward to a beer or two at JavaLand! Follow his rumblings about dynamic languages on (more...)

Binary search – is it still most optimal?

If you have a sorted collection of elements, how would you find index of specific value?
"Binary search" is likely to be your answer.
Algorithms theory is teaching us what binary search is most optimal algorithm for this task with log(N) complexity.
Well, hash table can do better, if you need to find key by exact match. In many cases, though, you have reasons to have your collection sorted, not hashed.

On my job, I'm (more...)

Moving My Beers From Couchbase to MongoDB

See it on my new blog : here Few days ago I have posted a joke on Twitter Moving my Java from Couchbase to MongoDB — Tugdual Grall (@tgrall) January 26, 2015 So I decided to move it from a simple picture to a real project. Let’s look at the two phases of this so called project: Moving the data from Couchbase to MongoDB Updating the application code to use

JDeveloper Debugging Tips (Watchpoints & Beep)

In a previous blog post I talked about scoping breakpoints for debugging purposes, next to scoping breakpoints JDeveloper has more interesting debugging features to offer.

I created a simple example to show both the watchpoint as well as the beep functionality. To illustrate this, I created a page with an inputText and a button, both bound to a backingBean. 

This  is the jsf code:

The code from the bean is also pretty straight forward:

But that’s impossible, or finding out that the JIT has broken your code.

Every now and then you look at some code and think that it cannot be possibly be wrong. Once you have ruled out a simple programmer screw up / enemy action in code (Make sure you read Java Puzzlers or similar) or a concurrency issue (Read Java Concurrency or go on Dr Heniz excellent course) you should sit back and take a few days and then starting thinking about whether the JDK is indeed (more...)