Posts tagged 11g
2 dagen seminar door Steven Feuerstein: Best of Oracle PL/SQL (8 en 9 december)
Oct 13th
In dit tweedaagse seminar neemt Steven Feuerstein je mee ver voorbij de basismogelijkheden van PL/SQL. Steven zal tijdens dit seminar de best practices behandelen die hij op tientallen plekken in de wereld heeft verzameld en die hij ook mede door zijn nauwe samenwerking met het PL/SQL product team van Oracle kan verifiëren en aanscherpen. Hij laat via code-voorbeelden en interactieve sessies zien hoe je als ontwikkelaar in staat bent om snel, hoogwaardige, goed onderhoudbare en uitbreidbare applicaties kunt maken.
Er is tijdens dit seminar voldoende ruimte om vragen te stellen en ideeën met Steven Feurestein uit te wisselen.

Bij dit seminar zijn de volgende zaken inbegrepen:
- Een exemplaar van het boek Oracle PL/SQL Programming (5th edition) van Steven Feuerstein (twv €71,-).
- Een PL/SQL quiz onder leiding van Steven Feuerstein met leuke prijzen.
- Ook ontvang je een gratis jaarabonnement op het PL/SQL Channel. Hiermee heb je toegang tot 27 uur videotraining (normaal $395).
Dit is de kans om in Nederland in een select gezelschap met één van de experts op PL/SQL gebied kennis te maken en je expertise in Oracle PL/SQL verder te vergroten. Meer informatie of inschrijven kan via deze link.
(NB: Deelname voor deze twee dagen kost 1050 euro)
Business Rule: Only One per Day, but keep the time
Aug 24th
The business rule states:
Only one entry is allowed per ID and per day and the time should be recorded.
The table involved (simplified for the blog post)
SQL> create table test 2 (id number 3 ,inspection_dt date 4 );
Wouldn’t it be nice if it was possible to do it like this?
SQL> create table test
2 (id number
3 ,inspection_dt date
4 ,constraint one_per_day unique (id, trunc (inspection_dt))
5 );
,constraint one_per_day unique (id, trunc (inspection_dt))
*
ERROR at line 4:
ORA-00904: : invalid identifier
This way you still have the complete date information (time is a component of the date column), and only use the TRUNC (inspection_dt) to constrain the data entry.
As you can tell from the error message, this is not allowed.
Oracle 11g Release 1 introduced Virtual Columns which can implement this requirement declaratively.
WebCenter 11gR1 PS3 – Design Time at Run Time with a Vengeance – introducing run time Data Controls and Data Visualizations
Jan 16th
The concept of design time @ run time that empowers application administrators and even end users to influence the application after it has been deployed has been gaining traction over the last few years. Bit by bit, run time customization facilities have made their way into Fusion Middleware. In the form of the SOA Composer, the BPM Process Composer, custom customization in ADF and various WebCenter features – most prominently the Composer framework.
The recent 11gR1 Patch Set 3 release has brought design time @ run time to the next level. In terms of functional richness as well as ease of use. Design Time at Run Time enables run time application administrators to not only change the layout of existing pages as well as add new content – static HTML or live Portlets -, but also to create new pages, edit the navigation structure of the application, change component properties and skin-attributes, create data controls and create and edit taskflows. Many of the application aspects that until recently were the sole discretion of the application developer are now available at runtime to privileged users. All in aid of agility and quick time to market.
This article gives a very rapid demonstration of the creation of a new WebCenter Portal application with only default content. This application is deployed in the Integrated WebLogic Server. At run time, a new page is created as well as a new Data Control for Employee from the EMP table in the SCOTT database schema. A table visualization of the Employees is added – still at run time – to this dynamically created page.
This next screenshot is of a page that did not exist when the application was deployed, with a table component that was created at run time through a data control that was also configured after deployment.

Oracle SOA Suite PS3 (11.1.1.3) soa-infra on warning after upgrade
Nov 20th
After installing Oracle SOA Suite 11.1.1.2 en upgrade afterwards to 11.1.1.3 puts the soa-infra application on warning. You can see this in the WebLogic console under Deployments.
Why is this?
The soa-infra does its work normal, dispite of this state.
If you install upto patchset 2, some MDB’s are added to the soa-infra application:
BamActionMDB
CubeActionMDB
PeopleQueryMDB
Solution is to create JMS Connection factories and topics
Look at Domain Structure >JMS Modules >SOAJMSModule. Inhere you should create the following objects
JMS connectionfactories en Topics:
jms/bpm/PeopleQueryConnectionFactory
jms/bpm/CubeCommandXAConnectionFactory
jms/bpm/PeopleQueryConnectionFactory
jms/bpm/MeasurementTopic
jms/bpm/PeopleQueryTopic
After restarting WebLogic you soa-infra is ok.
Note: When installing the full BPM suite these objects will be created automatically.
Monitoring availability Admin and managed servers in WebLogic 11g
Nov 19th
Run it with $WL_HOME/ common/bin/wlst.sh -loadProperties <property_file> <script_name>
Property file(properties.py):
admin_server=<name adminserver>
admin_server_port=
wluser=weblogic
wlpassword=<password>
clustername=[name]
domain=<domain_name>
import os
#Definition to print a running servers state
def printState(AdminServer):
connect(wluser, wlpassword, ‘t3://’+ admin_server + ‘:’ + admin_server_port)
serverConfig()
state(“AdminServer”)
state(“[name of managed server1]“)
state(“[name_of managed_server2]“)#Definition to disconnect from a server
def disconnectFromServer():
disconnect()
exit()#Calling connectToServer definition with no arguments
#connectToServer()#Calling printstateDetails with arguments
printState(‘AdminServer’)#Calling disconnectFromServer definition with no arguments
#disconnectFromServer()
Change the JDeveloper system directory
Aug 29th
De system directory is where JDeveloper stores the user specific settings, configurations and also (for 11g) the default domain of the embedded weblogic server. It uses the JDEV_USER_HOME environment variable to dettermine the location. If it’s not set is uses a default directory, for 11g on windows XP that’s <user dir>\Application Data\JDeveloper\systemXXX (XXX stands for the exact IDE version, e.g. system11.1.1.3.37.56.60 for 11gPS2, 11.1.1.3.0) and for 10g that’s <JDev install dir>\jdev\system (no version included). Note that the Application Data directory contains a space. And although this doesn’t prevent JDeveloper and the embedded weblogic from proper functioning, it may sometimes leads to an issue, e.g. that diagnostics (adrs) cannot create an image.
To change this directory, just add the JDEV_USER_HOME environment variable and set it to the required directory, that must not contain a space in the name and when you restart JDeveloper it will use that directory. However, you’ll notice that JDeveloper will now consider itself an almost new installation, without your custom configuration and no default weblogic domain but with installed extensions. It should be able to copy the old systemXXX directory to the new location but didn’t work with me and upgrade settings from a previous version didn’t work too. So you have to do the configuration again, but luckily the weblogic default domain is created automatically with the first deployment.
Be aware that when you have multiple 10g installations you should not set the environment variable because 10g doesn’t add a version number to the system directory and you’ll end up with one directory for all the 10g installations which I’m sure will cause serious problems. In this case you should can change the directory per 11g installation by setting the ide.user.dir property (use forward slashes) in the <middleware install dir>\jdeveloper\jdev\bin\jdev.boot file or add it to the startup script with -J-Dide.user.dir=<some directory>.
Manage JDeveloper external libraries
Aug 26th
Although JDeveloper provides loads of libraries out-of-the-box, you often need other libraries in your application. You can easily add these libraries via the project properties. This provides two options: ‘Add Library’ and ‘Add Jar / Directory’. We normally us the Add Library option because it allows to include the JavaDoc and the source code. However make sure that you check the ‘Deployed by Default’ checkbox or else the library will not be included on the classpath and the application will fail with a java.lang.ClassNotFoundException. By the way, we never use Tools -> Manage Libraries because we only use project libraries and never the user or system libraries, because they introduce local dependencies that need to be maintained at every workstation seperately.

Subversion – branching, merging and reintegration
Feb 25th
Subversion is a great source control system. One of the great features is it’s branching and merging support. Although many developers avoid it, branching is very powerful and useful and should not be something to be afraid off but something to be familiar with. And for the stable and controlled development is it almost a necessity to master it.
In general we can identify two types of branches: product and feature branches.
- The product branch is normally to support maintenance on a released version while development of the next version continues.
- A feature branch is normally a temporary branch to work on a (complex) change without interfering with the stability of the main development line (trunk) and in the end is incorporated back into the main line again.
Now, while you can work on isolation on the feature branch, there will come a time that you’ll have to integrate (merge) the changes with the trunk. And although subversion does provide extensive merge support, this might get messy with big changes. So it’s a real good idea to keep the feature branch in sync with the trunk and have the changes in the trunk regularly applied to the feature branch too. Actually, this is not so complicated as it might seem, especially when using modern tools like TortoiseSVN or IDE’s.
JDeveloper 11.1.1.2: Carousel component as Master and Detail
Nov 23rd
In this post I introduce to you one of the new ADF Rich Client components and one way to use it: The Carousel. You can display a set of images through a carousel, an animation effect that switches the emphasis successively between images as the user moves the mouse across them.
.jpg)
You can also have the carousel invoke and respond to partial triggers and display data in master detail relationships. Read the rest of this entry »




