vrijdag 10 december 2010

Installatie Oracle SOA Suite (6)

Vandaag wordt de exercitie herhaald, aangezien de oude hardware gerecycled is en er nu nieuwe hardware beschikbaar is: een Windows 7 machine.
De "oude" virtuele omgeving met Vista is eveneens beschikbaar, en ach, waarom niet op allebei de SOA Suite installeren?
Hierbij het verslag:
Allereerst is op de Windows 7 machine een virtuele omgeving geïnstalleerd: de zogenaamde Windows XP Mode. Die krijg je er "gratis" bij in Windows 7. Zou het mogelijk zijn om het daar in te installeren? In elk geval lukt installatie van Oracle XE (de database) wel. En dus kunnen we de RCU ook wel gaan draaien. En hoe zetten we de database-parameter processes ook al weer op 200 (is default 40)? Het prachtige webtooltje "Database home page" laat slechts de parameters zien, dus moeten we toch onze DBA-kennis oprakelen een een SQL-plus promptje opstarten:

SQL> connect sys as sysdba
Enter password:
Connected.
SQL>

en vervolgens:
SQL> alter system set processes=200 scope=spfile;

Deze zet de parameter en schrijft hem weg in het parameter bestand spfile, zodat de database na een herstart deze waarde behoudt.

We blijken ook nog te moeten herstarten met:

SQL> shutdown immediate

en vervolgens:

SQL> startup

en vervolgens checken we de parameter waarde met:

SQL> show parameter processes

NAME TYPE VALUE
------------------------------------ ----------- ---------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 4
log_archive_max_processes integer 2
processes integer 200

en hoera! het werkt. Dat was trouwens op de Vista virtuele omgeving :)

Vervolgens gaan we Weblogic installeren. Voor de Vista 32-bits omgeving kunnen we de win32-installer gebruiken, maar voor ons 64-bits OS gebruiken we de wls_1033_generic.jar, die we dus met een java-64-runtime moeten uitvoeren.

Hierna gaan we nog even op de (32-bits) Vista-omgeving de Weblogic-server opstarten, en inderdaad verschijnt na een tijdje het login-scherm in de browser (http://localhost:7001/console/).
(weblogic/manager1)

Hetzelfde truukje proberen we op "Windows XP Mode", maar daar lopen we in eerste instantie al tegen de rare Windows XP paden aan, namen met spaties.... dus verplaatsen we de zip-file naar een andere map zonder spaties, zodat we die kunnen uitpakken. Starten we dan de rcu.bat op, dan verschijnt, naast de meldingen over de characterset en de database-versie die niet blokkeren lijken te zijn, de melding dat de "shared pool size" te klein is: hij moet minimaal 147000 KB zijn en is slechts 146000KB.
Helaas trap ik in de valkuil door de parameter "shared_pool_size" te vergroten, deze was trouwens 0, maar dan kan ik de database niet meer opstarten, want de sga_target is te klein. Hoe zat dat ook al weer? Ooit heb ik het geleerd op de Oracle 10g database cursus.
De shared-pool size wordt dynamisch aangepast aan de vraag, zeg maar, en de sga_target geeft het maximum aan. Dus moeten we de sga-target vergroten, maar dat kan niet, want de database is niet opgestart!!! ORA-1034 ORACLE not available, weet je wel? En was het vroeger zo makkelijk als de waarde van de parameter veranderen in het tekstbestandje init.ora, nu maakt Oracle slechts gebruik van een binair bestand, genaamd spfile, en hoe wijzigen we daar ook alweer een waarde?
Andere aanpak: we starten de database op met "startup pfile=init.ora" waarbij we een tekstbestandje init.ora hebben aangemaakt met slechts de inhoud:
"
spfile=C:\oraclexe\app\oracle\product\10.2.0\server\dbs\SPFILEXE.ora
shared_pool_size=0
"
Uiteraard is het pad naar de spfile systeemafhankelijk, en vergeet niet dat windows xp de extensie .txt verbergt!!! (maar Oracle ziet hem wel), en zo krijgen we de database opgestart.
Laten we het nu goed doen: de sga-target vergroten:
alter system set sga_target=160000000 scope=spfile;
en natuurlijk de shared_pool_size op 0 zetten....
en vervolgens draaien we met succes de RCU-utility.
Nu gaan we de 64-bits Java development kit (JDK) installeren, want die is nodig om Weblogic te kunnen installeren. Of toch niet, want we krijgen de melding dat het niet een geldige 32-bits executable is..... Dus toch maar de weblogic 32-bits installeren? Conclusie Windows XP Mode kan alleen 32-bits software uitvoeren....
En inderdaad gelukkig lukt het wel om Weblogic 32-bits te installeren.

vrijdag 12 november 2010

Installatie Oracle SOA Suite (5)

Na enig ploeterwerk is het éindelijk gelukt een simpel BPEL-procesje aan te maken in JDeveloper.
Het geheim? Download het bestand soa-jdev-extension.zip, en in de "Check for update"-optie in JDeveloper kies je "Install from local file", waarna je naar het zip-bestand navigeert.
Uiteindelijk krijg je dan in je JDeveloper bij het aanmaken van een New Application de optie SOA Application (onder General Applications).
Hoe ziet dat er dan uit? Zo dus:
en nu maar eens proberen wat webservices te orkestreren :)
Afbeelding toevoegen

vrijdag 29 oktober 2010

Installatie Oracle SOA Suite (4)

De installatie is natuurlijk niet voltooid zolang je nog geen webservice hebt aangemaakt.
Dus heb ik met JDeveloper een simpele PL/SQL procedure gemaakt, genaamd HelloWorld, die ik vervolgens ga "publishen" als een webservice, met de daarvoor bestemde wizard.
Helaas faalt het met de melding "Error in database webservices assembly"... dus gaan we googlen en vinden we dat SQLJUTL niet met de Oracle XE database meekomt, en dat we die dus eerst nog moeten installeren, zie http://susanduncan.blogspot.com/2006/05/creating-plsql-web-service-from-oracle.html.
Dus dat doen we dan maar: we installeren het script sqljutl.sql, dat in de map <jdev_home>\sqlj\lib staat. Deze laadt de benodidgde package in het sys schema.
Helaas blijkt daar niets (meer) van waar, en OTN vermeldt dat voor JDeveloper 11.1.1.3.0 versie 10.2.0.4 van de Oracle DB en hoger worden ondersteund, terwijl de laatst beschikbare versie van Oracle XE 10.2.0.1 is :)
Haha, kortom: de door Oracle aanbevolen en samengeraapte componenten blijken dus niet samen te kunnen werken voor het publishen van een PL/SQL procedure naar een webservice. We moeten een list verzinnen.
Het gaat als het goed is om de component die een Java wrapper class genereert voor onze PL/SQL procedure. Misschien kunnen we deze met het handje inkloppen :)
Laat maar.
We maken wel een Java class die we gaan publiceren als webservice. En dat lukt inderdaad!

Maar we willen natuurlijk meer, en daarvoor moeten we de SOA Suite extensions downloaden. Die vind je door in JDeveloper vanuit het help-menu te kiezen: check for updates en dan de Oracle Fusion Middleware Products te installeren.
Vervolgens selecteren we de Oracle SOA Suite Composite Editor 11.1.1.3.0.
Nu kunnen we hopelijk BPEL gaan gebruiken. Helaas blijkt hij niet te installeren.....

vrijdag 15 oktober 2010

Installatie Oracle SOA Suite (3)

Eindelijk geregeld dat ik een dag aan iets anders mag besteden dan het buffelen op het project. Noem het Research & Development, noem het productontwikkeling, of anders, ik ben blij dat mijn werkgever bereid is te investeren in innovatie op dit vlak.

Dus ben ik aan de slag gegaan. Virtuele omgeving van collega gehad, die helaas net iets te krap was (4GB ipv de minimale 15GB), dus voorlopig toch maar weer even door op de laptop.
Helaas kan deze slecht omgaan met de veelheid aan bestanden, dat is althans mijn vermoeden, waardoor ik om de haverklap een not responding explorer moet afsluiten, óf vele minuten wachten... (indexing uitzetten helpt ook niet).

Uiteindelijk is het toch gelukt het SOA-generic zip-bestand uit te pakken (ofm_soa_generic_11.1.1.3.0_disk1_1of1.zip), dat overigens de SOA-suite runtime installeert.
Commando: setup.exe -jreLoc JRE_LOCATION (as Administrator), waarbij JRE_LOCATION de map C:\Oracle\Middleware\jdk160_18 is. Logica hiervan? Wie het snapt, mag het zeggen...
(...)
Ik blijk hiermee de patchset te installeren...
...en voordat je deze installeert moet je eerst ofm_soa_generic_11.1.1.2.0....blabla installeren. :)
Dus downloaden, uitpakken en installeren.....
"Oracle Fusion Middleware 11g SOA Suite Installation" lijkt nu te lukken :) en is gelukt!!!
Nu de patch nog installeren, dus de 11.1.1.3.0.... met hetzelfde commando. En ook dat verloopt succesvol!
Op dus naar de volgende stap: het configureren van de SOA Suite en het aanmaken van een "weblogic domain".
De SOA Suite is trouwens geïnstalleerd in de default map C:\Oracle\Middleware\Oracle_SOA1.
Van daaruit voeren we uit: common\bin\config.cmd.
Nu verschijnt het scherm waarmee een domain kan worden aangemaakt. We volgen de instructies en maken het domain aan met de default naam "base_domain". Deze blijkt echter al te bestaan, dus maken we in plaats daarvan "base_domain2" aan. Administrator wordt "weblogic" met als wachtwoord "manager1".
Nu de componenten JDBC-configuratie. Dit is een puzzeltje, maar uiteindelijk lukt het om de juiste schema-owners te vinden: dev_soainfra, dev_orasdpm en dev_mds (2x).
Het is niet te geloven: "Domain started succesfully!"
"Domain Location: C:\Oracle\Middleware\user_projects\domains\base_domain2
Admin Server URL: http://NL20873660:7001"
Start de Admin server dan ook maar ;) en checken met localhost:7001/console of het werkt: ja, hoor.
Laten we dan Oracle BAM ook maar toevoegen aan het domain... we voeren config.cmd nogmaals uit en kiezen deze keer de optie "extend an existing domain". Lukt blijkbaar ook, want er verschijnen geen foutmeldingen....

Nu kunnen we het zaakje starten. Met base_domain2\startWeblogic.cmd start je de administration server, en met base_domain2\bin\startManagedWeblogic.cmd soa_server1 de SOA-server en met hetzelfde commando en bam_server1 als parameter de BAM-server. Er verschijnen wat foutmeldingen die niet fataal lijken te zijn.
Nu op naar het ontwikkelen van applicaties met JDeveloper: het installeren van extensions voor JDeveloper.

Aangezien we op Windows werken, hoeven we slechts jdevstudio11113install.exe uit te voeren. Dus dubbelklikken op dit bestand, en vooral geduld hebben.... zodat de installer opkomt, en na de installatie voeren we meteen maar de quickstart uit, die niet nodig bleek :)
Nu hebben we in het start menu, in de map "Oracle Weblogic" een snelkoppeling naar JDeveloper, dus starten maar.
Er blijkt niks te gebeuren. Is 't een kwestie van geduld? Nog een keer geprobeerd.... en weer niks. Dan als uiterste middel: Run As Administrator gekozen voor JDeveloper, en daar verschijnt-ie.... wel een beetje raar.
Nu maar eens proberen een webservice aan te maken op basis van een PL/SQL procedure.

woensdag 8 september 2010

Installatie Oracle SOA Suite (2) de weblogic server

En inderdaad is het gelukt de Weblogic server te installeren.... En dan? Hoe benader je dat ding? Na enig speurwerk gevonden: http://localhost:7001/console geeft je toegang tot de zogenaamde Administration Console. Overigens: installeer het bestand wls1033_win32.exe.
O ja, en wat was ook al weer de default beheerdernaam: "weblogic" :)

Installatie Oracle SOA Suite (1)

Wat er aan vooraf ging:
Download van:
- Oracle Express Edition database: de "core" van het systeem (overigens 10G)
- Repository Creation Utility 11.1.1.3.0: een soort algemene utility voor het installeren van allerhande repositories, lijkt het wel
- Weblogic server: de welbekende applicatieserver
- OFM SOA generic 11.1.1.3.0: waar het allemaal om gaat, en let op de afkorting OFM Oracle Fusion Middleware, de nieuwe naam voor een reeks Oracle producten
- JDeveloper Studio 11113: de welbekende ontwikkelomgeving van Oracle.

En overige gegevens: OS is Windows Vista (Enterprise), en de hardware een twee jaar oude laptop met 2G RAM.

Allereerst installeer je de database, de naam wordt default XE, en de map default c:\oraclexe. Belangrijk is om het wachtwoord voor SYS en SYSTEM te onthouden. Belangrijk is dat de parameter processes groter of gelijk aan 200 moet zijn.
Daarna installeer je de RCU en gaat met behulp van deze utility de repository aanmaken. Vul de gegevens van je database in en kies vooral niet te veel onderdelen. Volg gewoon de handleiding op http://download.oracle.com/docs/cd/E14571_01/install.1111/e14318/qisoa.htm#CACIEIBJ.

Vandaag komen we hopelijk toe aan de volgende stap: het installeren van de Weblogic applicatieserver.