Sunday, January 30, 2011

After installation of Oracle UCM 11g (Enterprise Content Management Suite 11g), you will see that there are no UCM Contribution Folders by default (folder structure is missing). At least, this happened to me and my colleague - we were following standard installation procedures for ECM Suite 11g. Because there are no Contribution Folders enabled by default, WebCenter ADF Task Flows for UCM document management will not work.

After doing some research on UCM, we found that Folders_g component must be configured in UCM, for Contribution Folders to be enabled. If you will search ECM Suite 11g installation guide for Folders_g, will find one entry:

Chapter 5.7 is about Desktop Integration Suite configuration, however it gives some insights about Folders_g configuration as well - it is possible to enable this component from UCM Administration wizard home page (open UCM Admin Server and scroll down on its home page to Folders section):

To enable UCM connection from WebCenter Spaces, first enable RIDC access to UCM by specifying IP Address Filter. This can be done through Oracle Enterprise Manager, I have set access for any IP and 7777 port for RIDC connections:

Saturday, January 29, 2011

I'm positively surprised about how much is simplified Discussion Server configuration with WebCenter Spaces PS3. Almost one year ago I was blogging about Discussion Server setup with WebCenter Spaces PS2 - WebCenter 11g Discussion Service in Oracle ADF, honestly it was a bit of nightmare to setup all these security certificates and make it work properly. You can forget this now, setup processes is simplified to the minimum and can be completed in few minutes. I will walk you through Discussion Server setup with WebCenter Spaces PS3 and will give few hints for WebCenter PS3 setup on Oracle XE database, where you had previously installed PS2 RCU schemas.

In my case, after WebCenter Spaces PS3 setup was completed (I'm using Oracle XE with proper parameters for Oracle Fusion installation), WebCenter Managed Server was starting with MDS PL/SQL error - MDS_INTERNAL_SHREDDED package is missing (this error is happening after you drop PS2 RCU schemas and install PS3 on the same database). I have fixed this error, by opening DEV_MDS schema and recompiling problematic package - it was compiled successfully. If you will face same problem with MDS PL/SQL package, try to recompile it same as I did:

WebCenter Spaces PS3 Managed Server should start without errors - up and running:

Thats only one configuration issue I have faced, the rest was working all smooth. To configure Discussion Server with WebCenter Spaces PS3, open Oracle Enterprise Manager and go to WebCenter Spaces PS3 Service Configuration:

Its time to open WebCenter Spaces PS3, product load time performance simply can't be compared with previous release PS2 (huge performance improvements in PS3). I personally prefer to set Fusion Side Navigation model for WebCenter Spaces PS3, this will allow to render WebCenter Spaces user interface environment similar to Facebook - change Default Page Template through Configuration settings:

WebCenter Spaces PS3 landing page - looks cool:

Let's create new Space for Discussion service:

Select predefined Discussion Site template for newly defined Space:

We can post forum questions now directly from WebCenter Spaces portal:

Post answers as well to the forum associated with Red Samurai Support Space:

The same forum can be opened and viewed directly from Discussion Server:

Discussion group was automatically created and associated with our Space, we can see this from Discussion Task Flow path:

Wednesday, January 26, 2011

There are really exciting news with ADF 11g PS3, I did some practical test experiments and can see that ADF runtime performance with the new release is about 2-3 times faster comparing to previous ADF 11g PS2 release. Performance tests were done on production project, I replicated the same tests on sample application based on standard example HR schema from Oracle XE database. Both tests for PS2 and PS3 were done on the same machine, the same ADF application. I will not only describe performance improvements in PS3, but will go a bit deeper and describe performance friendly patterns for CRUD type operations. I will be focusing on editable/read-only ADF tables comparison for CRUD type operations - CRUD Operations in Oracle ADF 11g Table Without Auto PPR.

Download typical Master-Detail ADF sample application - ChoiceListPerformance2.zip. All experiments in this blog post will be done based on that sample.

This application contains Master data page for Departments - tests will performed with DepartmentId = 50:

Detail data - editable Employees table at first run is opened in 3.97 seconds (PS2):

During second run, same table is opened in 2.13 seconds (PS2):

Logically, second run is faster, because required components static data (Java Script, images, etc.) was already loaded during the first run.

Will repeat the same actions with PS3. At first run, detail table is loaded in 2.97 seconds (PS3). Which is by 1 second faster comparing to previous PS2 release - good improvement:

During second run, same screen opens in 1.13 seconds (PS3). Again, exactly by 1 second faster, comparing to the same test on PS2 release:

Okej, it was editable table test. Let's try to achieve less than 1 second opening for the detail screen. Will try to enable clickToEdit mode for editable ADF table - change Editing Mode property:

The same detail screen on PS2 opens in 3.63 seconds (PS2) at first run, there is slight improvement, but not much:

During second run, it opens in 2.2 seconds (PS2) - even slower or almost the same as editable table:

It looks like there is no difference in terms of performance to use directly editable table or clickToEdit functionality.

Let's look how the same mode (clickToEdit) will perform on PS3. First run of detail screen gives 2.38 seconds (PS3). This is faster then editable PS3 and PS2, but still more than 1 second:

Finally, second run gives 1.08 seconds (PS3) - we are close to 1 second (clickToEdit helps us in PS3):

What if we consider different approach and will use read-only table, user will be allowed to edit records by invoking editable ADF Faces popup (description - CRUD Operations in Oracle ADF 11g Table Without Auto PPR). From my experience, this approach is quite popular and users prefer it especially for large and complex tables. We create read-only table for detail data:

Will enable row selection, this will help user to open popup through double-click on the row:

In order to enable popup opening by row double-click, add clientListener and serverListener to the table component:

Thursday, January 20, 2011

With the new release of JDeveloper - PS3, we can install WebCenter PS3 extensions (use Check for Updates, see here). There are tons of new features, and bugs also? Let's hope that no :) Product is definitely improving with new features and becoming really attractive. New term is introduced - WebCenter Portal Framework application. This means we are not building anymore just WebCenter applications based on ADF framework. We are implementing portals ! Sounds inspiring - too good to be true? :) Well we will see, how stable this product will be - I will cover many topics from functionality to performance, in my future posts. Seems like lots of material for blogging this year ! :) On positive note - remember early ADF 11g TP releases, it takes time to make it solid. Now we can work with really stable framework.

Today I will start with easy topic - introduce WebCenter PS3 Navigation Model. Remember those times when we were implementing database driven dynamic menus ? Good - now you can forget it, now we have declarative dynamic menu provided by WebCenter PS3. One of the key things - its not limited to work only with one type of content. It supports everything - pages, ADF task flows, UCM content, external Web pages. Please read - Building a Navigation Model for Your Portal and Visualizing Your Portal Navigation from WebCenter PS3 developer guide. Its very useful to be aware of different options for Expression Language related to navigation.

Download sample application - EnterprisePortalApp.zip. This application is created as WebCenter Portal Application:

Make sure you configure your application with standard Portal features in the same wizard (otherwise forget it to make it working right):

WebCenter Portal application is generated without Model project. I have created one manually and implemented ADF BC objects:

Portal project contains predefine folder structure - don't touch it, it should stay like that. In order to be able to consume all WebCenter Portal Framework features, you should create your components inside that structure as well. For example, I have created ADF task flow with fragment: