OGh APEX Dag 2012 record aantal deelnemers

Verschenen in OGh Visie zomer 2012
De OGh APEX-dag die dit jaar voor de derde maal is gehouden maakte opnieuw duidelijk dat de Oracle ontwikkeltool zich mag verheugen op de belangstelling van een gestaag groeiende schare aanhangers. Ruim 280 OGh-leden kregen in Figi Zeist een gevarieerd programma voorgeschoteld, met onder meer presentaties over de nieuwe features van de komende APEX 4.2 release, tools en toepassingen op basis van APEX, interessante praktijkcases en doorlopende hands-on sessies.
OGh APEX Dag 2012 record aantal deelnemers

‘Grootste APEX-only evenement ter wereld’

 

Derde OGh APEX-dag trekt
weer record aantal deelnemers

 

De OGh APEX-dag die dit jaar voor de derde maal is gehouden maakte opnieuw duidelijk dat de Oracle ontwikkeltool zich mag verheugen op de belangstelling van een gestaag groeiende schare aanhangers. Ruim 280 OGh-leden kregen in Figi Zeist een gevarieerd programma voorgeschoteld, met onder meer presentaties over de nieuwe features van de komende APEX 4.2 release, tools en toepassingen op basis van APEX, interessante praktijkcases en doorlopende hands-on sessies.

 

Met dit record aantal deelnemers en deze opzet kan de OGh APEX-dag met recht worden bestempeld als het grootste APEX-only evenement ter wereld. Deze status wordt ook bevestigd door Joel R. Kallman, Director Software Development of Oracle Corp, in een felicitatiemail aan Learco Brizi, bestuurslid van de OGh en (mede-)organisator van de APEX-dag.

Het programma van de APEX-dag vermeldde na de plenaire openingssessie een flink aantal parallelsessies onderverdeel in verschillende tracks, met een breed scala aan onderwerpen en een aantal praktijkcases. Een uitgebreid verslag van een wederom zeer succesvolle dag, met dank aan de sprekers die als ‘verslaggever’ een bijdrage hebben geleverd. De hand-outs van de presentaties van de OGh APEX-dag zijn te downloaden van de OGh website www.ogh.nl.

 

Preview APEX 4.2

Deopeningskeynote werd verzorgd door Patrick Wolf, Principal Member van het Oracle Application Express Development team en verantwoordelijk voor de technische ontwikkelingen binnen APEX bij Oracle EMEA. In zijn presentatieging Wolf in op de belangrijkste kenmerken en mogelijkheden van Application Express versie 4.2, die Oracle in de loop van dit kalenderjaar op de markt zal brengen. Aan de hand van talrijke demo’s liet hij de komende nieuwe features de revue passeren. Zijn collega Iloon Ellen-Wolff, Global Technical Lead Application Express bij Oracle, licht voor OGh Visie een aantal van die nieuwe features toe.

 

APEX goes Mobile

Het grootste en belangrijkste speerpunt van APEX 4.2 is de mogelijkheid om de ontwikkeltool op mobiele devices te draaien zoals smartphones en tablets.

 
 
 

Door query mobile te integreren binnen Application Express wordt dit mogelijk gemaakt. Dynamic Actions wordt uitgebreid, dit is nodig om Application Express mobiel te ondersteunen. (Geo tracking). Ook binnen de cClender zal een stuk herschreven worden om geoptimaliseerd te kunnen functioneren op een mobiel device. (Calender view). Daarnaast zullen nieuwe regio types beschikbaar komen en zeer waarschijnlijk een nieuwe integratie met de MAPI van APEX (List view, Maps integration ). Patrick Wolf beriep zich hierbij wel op het ‘safe harbor statement’ van Oracle. “Deze feature staat gepland, maar geen ‘complain’ als deze feature onverhoopt niet in deze versie zal worden meegenomen.”

 

 

 

Integratie HTML5

Ook HTML5 zal geïntegreerd worden. Dit betekent oneindig veel nieuwe mogelijkheden in de vormgeving en grafische user interface van diverse applicaties. HTML-5 item types en attributes zullen beschikbaar komen.(E-mail, URL, phone, date picker, slider, placeholder).Charts in Application Express 4.2 zal de HTML5 technologie gaan gebruiken. De HTML5 techniek zal ook terug gaan komen in de manier waarop charts gerefreshed kunnen worden. Er zal een utility beschikbaar komen om de huidige versie van charts in je huidige applicatie om te zetten naar HTML5 charts. Dit om de overgang naar HTML 5 charts soepel te laten verlopen voor de APEX-ontwikkelaar.

JavaScript libraries komen beschikbaar op verschillende niveaus. Denk hierbij aan applicatie, page en theme niveau. Daarnaast kunnen CSS files ook op verschillende niveaus gebruikt worden. Inline CSS op page level en theme level. Dat maakt de grafische user interface natuurlijk een stuk flexibeler, en eenvoudiger te onderhouden.

Ook in themes zal de mogelijkheid komen van subscription. Meerdere theme styles kunnen gebruikt gaan worden binnen 1 applicatie! Dus het gebruik van themes wordt een stuk makkelijker en flexibeler voor de Application Express ontwikkelaar. Ook komt er een betere integratie tussen Oracle Access Manager en Application Express. Daarbij moet men denken aan nieuwe authentication schemes die beschikbaar komen. (Access Manager Authentication Scheme).

Een uitgebreid overzicht van de uitbreidingen en nieuwe features van Application Express 4.2 is te vinden in de officiële Statement of direction van Oracle: http://www.oracle.com/technetwork/developer-tools/apex/application-express/apex-sod-087560.html

 

 

Oracle Public Cloud en APEX

De presentatie van Iloon Ellen-Wolff stond in het teken van Oracle Public Cloud en de belangrijke rol die APEX daarin gaat spelen. Application Express is een populair development product voor de SQL- en PL/SQL ontwikkelaar. De populariteit kan ook duidelijk afgelezen worden aan het aantal downloads op Oracle Technology Network, dat in april al meer 11 miljoen bedroeg. Ook komen er steeds meer boeken op de markt met Application Express als onderwerp.
In het begin van dit jaar is Application Express 4.1 op de markt gebracht. De meest populaire feature van 4.1 is de mogelijkheid om fouten netjes af te handelen. Het werd als zeer storend ervaren dat fouten niet netjes afgehandeld konden worden in Application Express zelf. Ook features zoals data upload wizard, het gebruik van rowid, drag and drop calender kwamen beschikbaar. Allemaal features om het leven van de Application Express ontwikkelaar makkelijker te maken. Uiteraard worden hier niet alle nieuwe features van 4.1 genoemd, maar de meest in het oog springende nieuwe mogelijkheden.

Elk product kent helaas zijn bugs, zo ook Application Express. In versie 4.1 zijn maar liefst meer dan 200 openstaande bugs gefixed. Er is een nieuw theme, het Cloud theme aan de bestaande reeks themes toegevoegd. Dit theme is speciaal voor de Cloud ontwikkeld. Van de Application Express ontwikkelaars gebruikt 55 procent Application Express 4 of hoger. Dat is natuurlijk groot nieuws vanwege de krachtige gereedschappen die beschikbaar zijn in APEX 4.x.

 

Nieuwe trots Oracle

Ook binnen de Public Cloud gaat APEX een belangrijke rol spelen. Cloud is de nieuwe trots van Oracle, aangekondigd tijdens Oracle Open World vorig jaar door Oracle CEO Larry Ellison. Oracle gaat medio 2012 Database Services in de cloud aanbieden. Public Cloud betekent in Oracle optiek het beschikbaar stellen van de gehele Oracle stack via het internet. Alles wordt door Oracle verzorgd: de apparatuur, software, configuratie, patches etc. Dat betekent up and running in een zeer korte tijd en alle verantwoordelijkheid bij Oracle. Dit is een beetje te vergelijken met de ‘apex.oracle.com’ service op dit moment. Alleen apex.oracle.com is natuurlijk niet bedoeld als officiële productie omgeving en Public Cloud uiteraard wel.

 
 

Naast de Public Cloud wordt een Private Cloud service aangeboden. Dat betekent de ‘Cloud architectuur’, maar dan binnen je eigen bedrijf en op eigen apparatuur. Enigszins te vergelijken met ‘apex.oraclecorp.com’. (Intranet van Oracle). Ook bestaat er de mogelijkheid om Public Cloud met Private Cloud te combineren, ‘mee te snoepen van twee walletjes’, dit wordt Hybrid Cloud genoemd.

Provisioning van Cloud services is volledig in Application Express in gebouwd en daarnaast wordt Application Express een belangrijke tool binnen de Database Cloud service. De SQL workshop geeft de mogelijkheid om te interacteren met de Cloud database. Binnen de Oracle Cloud komen veel nieuwe packaged applications beschikbaar en de packaged applications zijn speciaal gericht op business functionaliteit.

 

Restfull webservice

Restfull webservice is de meest in het oog springende nieuwe feature. Via het HTTP protocol kunnen SQL en PL/SQL statements benaderd worden. Via een wizard kan op een zeer gemakkelijke en gebruiksvriendelijke manier een Restfull webservice gebouwd worden. Als de webservice gebouwd is kan deze service meteen uitgetest worden met behulp van de ingebouwde testknop binnen de wizard. Restfull webservice wordt mogelijk gemaakt door de functionaliteit die beschikbaar komt in de APEX Listener. Ook van de APEX Listener zal dit kalenderjaar een nieuwe versie uitkomen.

 

 

Moving to the APEX Listener

 

In de presentatie ‘Moving to the APEX Listener’ gaf Dimitri Gielis van APEX Evangelists eerst een overzicht van de verschillende mogelijke webservers (Apache + mod_plsql, EPG, APEX Listener) die met APEX gebruikt kunnen worden. Van elke webserver gaf hij de voor- en nadelen aan en tips om een optimale configuratie te krijgen.
 
 
 
 

Het meeste aandacht ging naar de APEX Listener. Dimitri vertelde over de verschillende features die de APEX Listener heeft en waarom het de aanbeveling van Oracle is om deze te gebruiken. Om te bewijzen dat de APEX Listener een waardig alternatief is, vertelde en toonde hij hoe je de verschillende web servers kan stress-testen via JMeter. De APEX Listener bleek in vele gevallen sneller te zijn dan de andere webservers.

Op het einde van de presentatie werd er ook nog in gegaan op de toekomst van de APEX Listener en hoe deze een belangrijke rol speelt in het Oracle Public Cloud verhaal. Meer informatie over APEX Listerner is te vinden in een uitgebreid artikel van de hand van Dimitri Gielis elders in dit nummer.

 

 

5 Cool Things you can do with HTML5

In deze presentatie, die voornamelijk bestond uit demo’s, liet Roel Hartman zien wat de mogelijkheden zijn van een vijftal nieuwe HTML5 features.

 

1.      Nieuwe INPUT types

De bekende HTML input types, zijn van het type ‘text’(de default waarde), ‘password’ of ‘button’. Maar in de HTML5 definitie zijn er een aantal toegevoegd, zoals ‘email’, ‘url’en ‘number’(zie http://www.w3schools.com/html5/tag_input.asp voor de complete lijst van mogelijke waarden). In een reguliere desktop browser heeft die wijziging niet veel zichtbaar effect, maar als je dezelfde pagina opent op een tablet met een virtual keyboard (zoals de iPad), zie je het verschil meteen. Het keyboard wijzigt namelijk automatisch als je van bijvoorbeeld een e-mail-veld naar een url-veld navigeert: Het ‘@’teken verdwijnt en een ‘.com’-toets verschijnt. En bij een numeriek veld wordt uiteraard een numeriek toetsenbord getoond: De gebruiker kan dus met minder, en eigenlijk overbodige, toetsaanslagen een website gebruiken die deze mogelijkheid benut.

Een wellicht nog gebruiksvriendelijker wijze van het invoeren van gegevens is door tegen je applicatie te praten. Roel liet zien dat een dergelijke functionaliteit eenvoudig toe te voegen is door ‘x-webkit-speech’ als attribuut aan een input veld mee te geven. Helaas werkt deze truc alleen in Chrome en als je Engels praat...

 
 

 

2.      Webstorage

In standaard HTML kun je informatie over de gebruiker, de sessie en andere gegevens die je van belang acht, opslaan in een cookie. Een cookie heeft echter de beperking dat die niet groter mag zijn dan 4kb en dat de data bij elke connectie van de browser en de server meegestuurd wordt. Als je dat kunt voorkomen heb je dus meer bandbreedte tot je beschikking en kan de schaalbaarheid toenemen.

En in HTML5 kan dat, door gebruik te maken van sessionStorage of localStorage. Het verschil is dat het eerste type opslag automatisch verwijderd wordt als de sessie beëindigd wordt; het tweede type opslag blijft bestaan. De limieten zijn verschillend per browser, maar lopen inde megabytes. Roel liet een demo zien van een webwinkel waarin producten in een winkelmandje gedaan kunnen worden, zonder tussentijds contact met de server. En na het afsluiten en weer opstarten van de browser, bevatte datzelfde mandje nog altijd dezelfde producten.

 

3.      Geolocation

Geolocation is wellicht een van de meest bekende HTML5 features. Een groot aantal websites maakt hier al gebruik van. Roel liet zien dat de hele truc achter deze functionaliteit slechts een regel JavaScript code is:navigator.geolocation.getCurrentPosition(showLocation, handleError);waarbij ‘showLocation’ de functie is die uitgevoerd wordt als de locatiebepaling succesvol is – bijvoorbeeld het tonen van een kaartje – en handleError de functie is die aangeroepen moet worden als de locatiebepaling niet gelukt is.

 

4.      Notifications

Met HTML5 kun je vanuit een browser zelfs notificaties versturen die getoond worden op de desktop van de gebruiker, dus buiten de browser. Ook hiervoor geldt dat de hoeveelheid code die hiervoor nodig is zeer beperkt is. Kijk maar eens op http://www.html5rocks.com/en/tutorials/notifications/quick/ voor een aantal voorbeelden.

Het gebruiken van dergelijke notificaties is op dit moment helaas beperkt tot Firefox en Chrome.

 

5.      Websockets

Als je op in een stateless browser pagina informatie wil actualiseren, zit er niets anders op dan een request naar de applicatieserver te sturen en het resultaat af te wachten. Voor applicaties die bijvoorbeeld 10 seconden achter mogen lopen op de werkelijkheid, zit er niets anders op dan 6 requests per minuut te sturen. En als je dat voor 1.000 gebruikers doet, tikt dat lekker aan. Het tikt vooral lekker aan, omdat in 9 van de 10 gevallen er geen nieuwe, actuelere, informatie is! Dus 90% van de requests was eigenlijk onnodig en leidt alleen maar tot verlies van bandbreedte, schaalbaarheid en wellicht performance.

De oplossing hiervoor is het gebruik van WebSockets. Met WebSockets kun je, in tegenstelling tot het regulier pull-mechanisme van browsers, ook informatie naar browsersessies pushen! Dus als gebruiker A iets in de database wijzigt, kan gebruiker B dat op zijn scherm zien, zonder de pagina te verversen. Roel gaf hiervan een fraaie demo, waarbij de mensen in de zaal gebruik maakten van een applicatie op apex.oracle.com, en daar een melding kregen dat gegevens in Roels lokale database waren gewijzigd. Deze feature zal een grote invloed krijgen op de wijze waarop web applicaties, al dan niet mobiel, opgezet worden!

Een uitgebreidere behandeling van bovenstaande features is te vinden op Roels blog (http://roelhartman.blogspot.com/). De bijbehorende demo applicatie is te zien op http://apex.oracle.com/pls/apex/f?p=HTML5.

 

 

Toeters en bellen met APEX

Marcel van der Plas van CIBER behandelde in zijn presentatie ‘Toeters en bellen met APEX’. APEX biedt steeds meer mogelijkheden om een applicatie aan te kleden met visuele effecten en gebruiksvriendelijke uitbreidingen. Sinds APEX 4.0 is het gemakkelijker geworden om een en ander te realiseren, onder andere door de ingebouwde jQuery Javascript library. Maar ook de versies vóór APEX 4.0 kunnen met Javascript libraries werken. Naast jQuery bestaan er ook andere Javascript libraries zoals bijvoorbeeld Scriptaculous en Ext-Js. jQuery is trouwens ook populair omdat het met jQuery mogelijk is om zelf plug-ins te maken. Op het internet zijn allerlei plug-ins te vinden die in jQuery werken. Let wel, dit zijn niet de APEX plug-ins.

Het is in APEX mogelijk om audio en video in te bouwen in een pagina. Video kan bijvoorbeeld gebruikt worden om instructiefilmpjes te laten zien op een intranet pagina. Audio kan gebruikt worden om geluid aan een bepaald event te koppelen, bijvoorbeeld bij het opstarten van een pagina.

 
 

 

Google Maps

Heel populair is tegenwoordig het inbouwen van een plattegrond of Google map. Gebruikers hebben steeds meer behoefte aan visuele weergave van locatiegerichte data of een plattegrond om een bepaalde locatie te vinden. In APEX kan met het ingebouwde Oracle Maps en met Google Maps een plattegrond getoond worden. Met charts is het mogelijk om in APEX grafieken te laten zien die een visuele weergave zijn van data, bijvoorbeeld financiële gegevens. Er zijn heel veel verschillende grafieken te maken, van lijndiagram tot taartdiagram, inclusief bijbehorende legenda en verschillende kleuren om de categorieën aan te geven.

Met dynamic actions kan een ontwikkelaar bepaalde gebruikersacties koppelen aan bepaalde processen. Deze gebruikersacties kunnen vergeleken worden met de zogenaamde Javascript events. Voorbeelden van Javascript events zijn Onchange en Onmouse. Drag & drop is de mogelijkheid om objecten in webapplicaties zoals plaatjes te verplaatsen. Het meest bekende voorbeeld is de shopping cart waarin producten naartoe gesleept kunnen worden. De meeste Javascript libraries ondersteunen drag en drop, dus deze functionaliteit is ook al in APEX 3.2 te gebruiken.

Met HTML5 en CSS3 zijn er meer mogelijkheden bijgekomen om webpagina’s te verfraaien. Zo zijn er in HTML5 nieuwe tags bijgekomen om webpagina’s overzichtelijker te maken en is er ondersteuning voor audio en video. CSS3 biedt onder andere mogelijkheden voor afgeronde hoeken, schaduweffecten en spraak. APEX biedt nog geen ondersteuning voor de nieuwe HTML5 tags maar door middel van de plug-in functionaliteit in APEX is het wel mogelijk om generieke HTML5 items te maken, zoals bijvoorbeeld een video plug-in die gebruik maakt van de nieuwe video tag. Let wel op met HTML5, want browsers vertonen verschillend gedrag en sommige versies bieden nog geen ondersteuning voor (delen van) HTML5. In Internet Explorer is het overigens mogelijk om door middel van conditional comments (CC) de versie te checken en afhankelijk daarvan bijvoorbeeld een andere stylesheet te gebruiken.



Integratie van Spatial en APEX bij
de bouw van een geo-gegevensmagazijn

Transfer Solutions heeft voor de gemeentelijke markt een open geo-gegevensmagazijn gebouwd, met behulp van Oracle APEX. In zijn presentatie deelde Raymond van den Hoek van Transfer Solutions de tijdens het ontwikkeltraject opgedane ervaringen aan de hand van praktische vraagstukken en oplossingen. De presentatie was met name interessant voor iedereen die aan de slag gaat met APEX in combinatie met Oracle Spatial. In de presentatie werd de gekozen architectuur en de context van het magazijn toegelicht, alsmede de techniek en de dagelijkse praktijk van ontwikkelaars en beheerders die APEX en Spatial combineren. De technieken die bij deze oplossing gebruikt werden zijn: APEX, Oracle Spatial, PL/SQL, CSS, XML, Javascript, GeoServer, OpenLayers, WMS, WFS.’

 

 

Een plugin: hoe pak je het aan?
In zijn presentatie behandelde Alex Nuijten van AMIS Services het fenomeen plugin dat APEX sinds versie 4 kent. Met het plugin-mechanisme kun je APEX uitbreiden met functionaliteit waar jezelf behoefte aan hebt, maar die nog niet door APEX zelf aangeboden wordt. Zo is bijvoorbeeld zelf een type item toe te voegen die nog niet in de wizard van APEX bestaat. Er kunnen verschillende soorten plugins worden gedefinieerd. Naast de reeds genoemde item plugin kunnen ook zelf regions, dynamic actions, processes en zelfs authorization plugins worden gemaakt.
De sessie was met name gericht op ontwikkelaars die nog geen ervaring hadden met het maken van een plugin. Allereerst werd er stil gestaan bij het gebruik van een plugin, eentje die beschikbaar is in de sample application van Oracle zelf, en hoe je een plugin kunt importeren in je eigen workspace. Daarnaast werd stap voor stap een plugin gemaakt. De plugin die gemaakt werd kon een plaatje tonen in een input item. Deze plugin is te verkrijgen op de volgende site: http://www.apex-plugin.com/oracle-apex-plugins/item-plugin/picinsideeditbox_141.html


In APEX 4 is de JavaScript library jQuery opgenomen. Voor deze JavaScript library zijn vele plugins beschikbaar, het aantal ontwikkelaars dat van jQuery gebruik maakt is vele malen groter dan het aantal APEX ontwikkelaars. Het is dan ook mogelijk om een APEX plugin te maken die gebruik maakt van een jQuery plugin. Tijdens de presentatie werd ook dit gedaan. Als voorbeeld is gekozen voor een Password Strengthmeter, een gekleurde tekst die aangeeft hoe sterk (of zwak) je wachtwoord is.
Door gebruik te maken van een aantal standaard APEX packages, APEX_PLUGIN en APEX_PLUGIN_UTIL, is het bijna kinderspel om een APEX plugin te maken. Inmiddels zijn er vele plugins beschikbaar, door Oracle beschikbaar gesteld dan wel door collega APEX-ontwikkelaars gemaakt.

 

 

Een versie van de waarheid door APEX

Bart Meijer en Marc Philip Draaijer vanCaesar belichtten in hun presentatie het CADER-project dat wordt gerealiseerd bij Crédit Agricole Consumer Finance, marktleider in consumptieve financieringen in Nederland. In opdracht van CA-CF is als onderdeel van compliance naar de BASEL-wetgeving het CADER-project gestart. CADER staat voor Crédit Agricole Definities Entiteiten en Relaties. CADER moet de business in staat stellen begrippen te definiëren, zodat deze bedrijfsbreed kunnen worden gebruikt. Voorheen was er niet altijd duidelijkheid over de precieze betekenis van een begrip, met name tussen verschillende afdelingen.

Als onderdeel van de definitie van een begrip is het BI-team in staat een relatie te leggen tussen een begrip en de relatie met de zgn. onderliggende ‘technische lagen’, te weten Datawarehouse, ETL-laag en Bronsystemen. Vanuit technisch oogpunt biedt de applicatie een interessante blik op waar APEX voor gebruikt kan worden. Zo is er een dynamische helpfunctie gebouwd, waarbij de gebruiker helpteksten kan definiëren op verschillende punten in de applicatie. Door middel van dynamic actions is het mogelijk - door de verschillende lagen - binnen een begrip te navigeren. En door middel van NTLM-authenticatie is inloggen op de applicatie vanaf een Windows machine niet nodig.

APEX & jQuery Mobile

Tijdens zijn keynote liet Patrick Wolf van het Oracle Application Express Development Team zien wat de ontwikkelaar aan nieuwe functionaliteit in versie 4.2 kan verwachten. De focus zal op de integratie van het jQuery Mobile framework liggen. Tijdens de demonstratie van de nieuwe features werd wel duidelijk, dat de jQuery Mobile functionaliteit op de voor APEX kenmerkende declaratieve manier voor de ontwikkelaar beschikbaar komen. APEX, als ontwikkel platform, zal hiermee aansluiten op de algemene trend van ontwikkelen van mobile applicaties.

De presentatie van Christian Rokitta van RokIT richtte zich op die ontwikkelaars, die niet kunnen of willen wachten tot de release van versie 4.2 en nu al aan de slag wil met jQuery Mobile in APEX. jQuery Mobile is een lichtgewicht framework, gebaseerd op de jQuery extensie, met als doel de ontwikkeling van mobiele webapplicaties te vergemakkelijken. Omdat alle toestelspecifieke eigenheden door jQuery Mobile afgevangen worden kan de ontwikkelaar zich op de eigenlijke functie van zijn applicatie of website concentreren.

Al is jQuery Mobile op het jQuery framework gebaseerd, het concept en daarmee de manier van toepassen verschillen sterk. jQuery vergemakkelijk het vinden (queryen) en wijzigen van elementen in een HTML pagina, waardoor websites veel eenvoudiger dan met enkel JavaScript dynamisch vervaardigd kunnen worden. Ontwikkelen met jQuery Mobile bestaat vooral in het toepassen van voorgedefinieerde HTML-structuren die d.m.v. speciale attributen specifieke functies van een mobiele pagina gaan overnemen, zoals toolbars, buttons of lijsten.

 

Wachten op 4.2?

Op de website van jQuery Mobile (www.jquerymobile.com) zijn alle componenten goed en overzichtelijk gedocumenteerd. De voorbeelden kunnen als basis voor oefeningen in APEX gebruikt worden.

Wie met jQuery Mobile in APEX aan de slag gaat, zal dan ook vooral bezig zijn de jQuery Mobile HTML in APEX templates om te zetten. Vaak zijn er verschillende mogelijkheden om de HTML in APEX te implementeren. Enkele veelgebruikte componenten, zoals listviews, zijn zo flexibel te configureren, dat deze zich uitstekend zouden lenen, om als plug-in in APEX te realiseren. Maar wie de keynote van Patrick Wolf heeft gevolgd zal zich afvragen, of dit de moeite nog waard is, aangezien wij in 4.2 een verregaande integratie van dit soort functionaliteit kunnen verwachten.

Dus, nu al met jQuery Mobile in APEX aan de slag gaan of afwachten tot (in de herfst van dit jaar?) APEX 4.2 beschikbaar komt? Dat hangt af van of je nu al een mobile APEX applicatie nodig hebt. Als je nog even de tijd hebt, wacht dan op 4.2, dan wordt het een stuk makkelijker. Wat niet wegneemt dat je alvast wat vingeroefeningen met jQuery Mobile in APEX kan doen. Ook met versie 4.2 zal je er niet aan ontkomen her en der een template in APEX zelf aan te passen.

 

From Zero to APEX
APEX is snel te leren, tenminste met de juiste voorkennis. Als je al kennis hebt van Oracle SQL en PL/SQL dan heeft APEX geen steile leercurve. Dit in tegenstelling tot andere tooling, waarbij de leercurve enorm kan zijn. In zijn - tweede - presentatie, samen met met Margreet den Hartogh van de Grontmij, verhaalde Alex Nuijten over een APEX project waarbij er weinig Oracle SQL of PL/SQL kennis in het ontwikkelteam aanwezig is.

Het ontwikkelteam was gewend om client-server applicaties te maken met behulp van Uniface. Hiermee is de afgelopen vijftien jaar gewerkt aan een databaseonafhankelijke applicatie. Hoewel de applicatie erg succesvol is, is toch wel te zien dat de applicatie al de nodige jaren achter de rug heeft. Ook de gebruikers wilden een moderne applicatie. Daarom werd besloten om een nieuwe versie te ontwikkelen met Oracle APEX.
 
 
 
Nadat deze grote horde genomen was, en duidelijk werd hoe je een applicatie maakt die in een webbrowser werkt, begon de applicatie snel vorm te krijgen. Niet alleen werd er een nieuwe technologie gekozen, ook werd er een andere aanpak gehanteerd. Waar eerst heel traditioneel ontwikkeld werd, werd er nu gekozen voor een Scrum aanpak. Door deze methode werd de betrokkenheid van het bedrijf enorm vergroot. Door de regelmatige demo's die gegeven werden na een sprint, was duidelijk wat de voortgang van het project was. Hierdoor ontstond een enthousiasme voor het product dat ongekend was binnen de organisatie.
 
Het ontwikkelteam kreeg dan ook te maken met een heleboel nieuwe technieken en programmeertalen: Oracle SQL en PL/SQL, SQL Developer, Datamodeler, Code Tester, HTML, CSS, JavaScript, jQuery, APEX Listener, Glassfish en JasperReports. Al met al heel wat om te leren. Toch bleek niet de syntax of de tools het grootste probleem te zijn in het project. Een van de meest lastige dingen die het team tegenkwam was het feit dat er van een klassieke client-server applicatie naar een webapplicatie werd gegaan. Het ‘client-server denken’ bleek lastiger los te laten dan werd gedacht. Al gauw werd terug gegrepen naar bekende principes hoe de applicatie dient te werken, en dat gaat niet altijd samen met het werken in een webbrowser.
 

 
 
 
 

Hands-on sessies in het APEX Café

Deelnemers aan de OGh APEX-dag konden gedurende de middag speciale hands-on sessies volgen. Onder leiding van Herman Mensinga en Marti Koppelmans van Oracle Nederland en Learco Brizzi van Itium konden de ‘ cursisten’ met Oracle OBE’s hun praktische vaardigheden met APEX beproeven dan wel verder aanscherpen.