Holiday Project, A DIY CNC Adventure

This past holiday break, I have mostly stayed in the garage – setting up a CNC machine and cutting all the things that I deemed cuttable by it.

Raymond is busy on CNC jobs

Owning a CNC machine has been on my list for a long time, it is just out of my price range for a high quality professional grade machine, or maybe not useful enough for a “toy” level DIY one. But every time I built (more...)

Death and Resurrection of a Fitbit Experience

My first Fitbit Surge died. I bought the device in March 2015 and used it everywhere. I documented my user experience of the Fitbit Surge from Helsinki to Beijing and wore it the whole time, including during several marathons in the U.S. and Europe. 

I loved using the thing and the experience of analyzing and comparing recorded activity data with other Fitbit users was great, and still is. 

Sure, I bitched about (more...)

WebLogic Server: Logging the SOAP action in the access.log

WebLogic Server allows you to customize your access.log. This can be very powerful if you want to monitor for example service response times in a tool like Splunk (see here). When working with SOAP services though, especially those with many operations, it can be insufficient to monitor services to the level of the individual endpoint. You want to also know with which intent the endpoint is called. In this blog I will show (more...)

Property expansion under windows.

A little over a year ago I wrote an article about automatic scripted installation of the SOA and BPM QuickStarts. One thing I wanted to improve is to be able to dynamically expand properties in the response file. I already found out how to do that under Linux but most QuickStart installations are done under Windows. So how to 'how to replace properties in textfile in Windows'?

I found this StackOverflow question, (more...)

Recursion in XSLT

Yesterday I got involved in a question to handle a list of input documents where there is a start value and for every other element this start value has to be increased until an end value is reached.

In more advanced XSLT cases you may end up in a situations that aren't solvable using a for-each. Why not? Well, in the for-each you can't iteratively re-calculate a variable. Like a program language as Scala, XSLT (more...)

Loading a Git Repository in JDeveloper 12c

Does JDeveloper work well with Git is a question I get asked occasionally. Or the question is not even asked and the assumption is that somehow the combination of JDeveloper and Git does not work well. It seems that this assumption is sometimes based on bad experiences from a long time ago – or on prejudice. In my experience, JDeveloper 12c integrates very well with Git. It may not have built in support for all (more...)

ADF Faces Client Side Event Bus – Use ServerListener to engage Server from Consuming Fragment for programmatic Partial Refresh

In a recent article (Client Side Event Bus in Rich ADF Web Applications – for easier, faster decoupled interaction across regions), I proposed an approach for a client side event bus in ADF Faces Web Applications – as light weight, straightforward, simple alternative to contextual events. The article demonstrated how a client side event in a fragment in a nested taskflow was published, routed and consumed in a different taskflow, leading to a (more...)

Client Side Event Bus in Rich ADF Web Applications – for easier, faster decoupled interaction across regions

The challenge is well known: our ADF Faces Web application is composed of various taskflows that have been developed as stand alone, encapsulated units that can be used and reused in various contexts. These taskflows can have come from third parties, remote development teams, other applications are we may have developed them ourselves. No matter their origin: they are encapsulated. However, things may happen inside these taskflows that should have an effect outside of them (more...)

Oracle Mobile Cloud Service (MCS). Implementing custom API’s using JavaScript on Node.js

Oracle Mobile Cloud Service is a mobile backend as a service. MCS does its magic by providing a lot of features to make implementing mobile services easy such as (among many others) authentication, logging/analytics, lookups and calling other services. There are also features available to make integration with mobile clients easy such as providing an easy way to implement push notifications.

Personally I think one of the most powerful features of MCS is the ability (more...)

Oracle Database Appliance X6-2L and X6-2 HA, comparing the line

A while ago I published an article about the ODA X6-2S and X6-2M, the new entry level machines for small business. And since then Oracle introduced the ODA X6-2L and the successor of de ODA X5-2: ODA X6-2 HA. Quite a line of ODA’s. But when to choose what ODA?

This post is a sequeal to the former article and intended to outline the two ‘new’ (quite a while already by now) machines and the (more...)

A good year for the Clouds

At last we stumbled into a new year. New rounds, new chances as we say in Dutch. I ended 2016 and start 2017 on a project that involved the implementation of several Oracle Cloud products, where I'm responsible for ICS and PCS. But I also did several on-premise projects. So from a current Integration/Process Cloud implementation what to think about Oracle's Cloud plans?

Last fall, one of my managers came home from a presentation where (more...)

Gebruik van de “Standaard Zaak-en Documentservices 1.1” van Kwaliteitsinstituut Nederlandse Gemeenten (KING), almede MTOM/XOP t.b.v. een koppeling tussen diverse applicaties (gerealiseerd binnen OSB 11g) aangaande het proces van vergunningverlening voor een organisatie in de publieke sector

Voor een organisatie in de publieke sector werd aan AMIS gevraagd om met behulp van Oracle Service BUS 11g, een koppeling te realiseren tussen diverse applicaties aangaande het proces van vergunningverlening, zodat de daarbij benodigde gegevens eenvoudiger geautomatiseerd verwerkt konden worden.

Belangrijke randvoorwaarden uit het Solution Design waren:

  • het hanteren van landelijk vastgestelde standaarden voor informatie-uitwisseling, waarbij gekozen is voor StuF-ZKN en het gebruik van de “Standaard Zaak-en Documentservices 1.1” van Kwaliteitsinstituut Nederlandse Gemeenten (more...)

Google Home Notifier

Working in an emerging technologies team has a lot of perks. One of them is to kick the tires of technologies that are about to become mainstream. It also has the somewhat fun privilege to gain interwebz bragging rights or the equivalent of the emblematic/annoying “first” comment that plagued the web forums just a few years ago.

Among my list of “first”* (afaik) are the following:

Executing command line scripts from the Oracle Forms client – using WebUtil

Our challenge: we are building the new ERP system – a pure HTML5 browser based application in Oracle ADF. This application replaces the current Oracle Forms based application. For more than a year and a half – the users will have a hybrid situation on their hands: some of their tasks are handled in the new application while others are still supported by the current application. It is clear that this dual application situation is (more...)

Programmatically extract key and value from Windows registry using simple Dos command line statement

The Windows Registry can be inspected from a Dos (Command Prompt) command. The key and data element I was looking for is:

Key Name: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe

Data Name: Path


The OS command we can use to extract the value of this entry:

REG QUERY “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe” /S /v Path

The result from this command looks like this:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe
     Path    REG_SZ    C:\Program Files (x86)\Google\Chrome\Application
End of search: 1 match(es) found.




Emotion Recognition at Oracle Maker Faire

Emotibot, an emotion sensing robot.

A few weeks before the first ever Oracle sponsored Maker Faire, I was experimenting with some of the cognitive (vision) recognition APIs available. Google Vision API, Watson Visual Recognition and Microsoft Computer Vision API are some of the biggest players in this field right now.

After testing all of them I found the idea of Microsoft’s CaptionBot really compelling: Upload an image to the CaptionBot and it will try to come (more...)

WebLogic Server: Automate obtaining performance metrics from the DMS

Oracle provides the Dynamic Monitoring Service (DMS) as part of WebLogic Server which is extremely useful if you want to obtain aggregated data of an environment in case of for example a performance test. The data which can be obtained from DMS is extensive. This varies from average duration of service calls to JVM garbage collects to datasource statistics. DMS can be queried with WLST. See for example here. On example script based on this (more...)

Deploying Oracle Management Cloud for Infrastructure monitoring

It’s a bit hard to choose the right heading for this article. How do you call setting up Oracle Management Cloud (OMC) – a trial environment – to explore the possibilities for monitoring the infrastructure such as hosts, databases, middleware. You don’t have to install OMC – it’s already there –, nor to deploy OMC core-software in the on-premise environment. In fact the only thing that is to be done is installing a cloud agent (more...)

Oracle Management Cloud – Application Performance Monitoring for Java EE, ADF & SOA Suite applications

January 26th 2017: Oracle Management Cloud event at AMIS. Register here.

In a recent article, I shared my first steps (small step for mankind, big steps for me) with Oracle Management Cloud: First steps with Oracle Management Cloud – Application Performance Management for Node (JS) applications. In that article, I have explained in broad terms the purpose of Application Performance Monitoring in the scope of OMC:

Application Performance Monitoring (APM) is clearly indispensable to any (more...)

Recursively replacing a string in file and directory names and in text files on Windows – PowerShell to the rescue

A simple enough requirement: we want to create a template project, a set of directories and files that we can use as a starting point for a new type of project. The names of the directories and files and some of the template’s files’ contents contains placeholder names – say DomainX and ModuleY. When we start a new project based on the template, we want to copy the template project structure and very easily replace (more...)