You are here

Webcenter

Customizing taskflows: Adding parameters to WebCenter taskflows

In a previous post I explained the basics about customizing taskflows in WebCenter. This post goes one step further and will explain how we can add input parameters to WebCenter taskflows and use those parameters to drive the taskflows.

As an example we will customize the profile taskflow from the Peoples Connection services by adding parameters so we can decide which parts of the profile we want to display.
You can download the application with the customization here.

Oracle Open World 2012 wrap-up

My second open world has come to an end and I can look back with a good feeling. It was a great conference.

Open World is not all about getting your brain washed by Oracle PM's and sales reps. It's also about networking and catch up with partners or customers. I have to say, I had a great time doing both. My brain is now fully washed and I caught up with some lovely chaps.

Read more to find an overview of all the events and presentations I attended. Comments are more than welcome.

Adding a runtime picker to a taskflow parameter in WebCenter

In a previous post I have explained how you can create a LOV for an input parameter in WebCenter.
You can go a step further by creating a popup to allow the user to select items or do more complex things. The picker for an input parameter is a simple taskflow so you can make it as complex as you want to meet all your requirements.

I will use the same technique to build a more useful example. Instead of adding a picker for a custom taskflow, I will create a picker for an out of the box taskflow from WebCenter.

In this example I will create a picker for the features Off parameter of the document explorer. This parameter allows you to customize the document explorer by disabling certain features. The problem with this parameter is that you have to know the exact name of the feature which few people actually know.

That's why I have decided to create a picker so you can easily check a checkbox for the features you want to disable.

Adding a runtime LOV for a taskflow parameter in WebCenter

For a while I have wondered how we can customize the parameters tab for a taskflow in WebCenter.
Some OOTB taskflows like document manager and content presenter have these nice LOV's for certain input parameters. At first I thought this was not documented but I finally found how to do this.

I thought it would require some configuration on the taskflow definition but that's not the case. It is an extension on the Oracle composer so we have to define the LOV's on the composer level and not on the taskflow level. That's probably why I never found the documentation. I was looking in the wrong place...

You can find the official documentation about how to do this here.

The examples are quite simple so I was thinking in making a more useful example. In this post I will create an employees taskflow which will take the department as an input parameter. The user will be able to select the department from a LOV in the parameters tab.

Working with Customization Classes in WebCenter

In WebCenter each customization that you do is stored in a layer in the MDS. This is nicely explained in the ADF Documentation.

WebCenter uses this functionality quite heavily. Almost everything you do at runtime is stored as such a layer on top of your basic application.

Most people who have been working with WebCenter for a while understand this part but not many people know or understand how to manipulate the layer selection. You can control in which layer those customizations are stored or which layer to display depending on your own business logic.

Adding parameters to taskflows in the resource catalog

Everybody who works with WebCenter knows about the Resource Catalog. It allows you to provide the users with a catalog of components so they can customize the page by adding these components.

The resource catalog can take taskflows, portlets, folders, documents and much more. Most of us will know how to manage the resource catalog by adding these components and arranging them in folders.

There is one nice feature that is not that well know but can provide powerful functionality. It often happens that a taskflow or portlet has to be reused in different pages with the exact same set of input parameters. Most of the time people put these taskflows on the page and provide the parameters for each instance.

The resource catalog provides us with functionality to preset certain parameters of the taskflow or portlet. These are called URL Parameters and are provided in the bottom section of the component.

Customizing taskflows in WebCenter Portal

A lot of questions on the OTN forums are about customizing the out of the box taskflows for WebCenter. Although the documentation from Oracle is quite straight forward and complete, it lacks proper examples and use cases. It just explains the very basic concept on how to customize taskflows.

Therefore I am going to focus a little more on customizing these taskflows. This will be the first of many posts about customizing taskflows.

In this post I will describe the basic concept for customizing taskflows in a WebCenter Portal application. Later on, I will explain how to do the same thing in WebCenter Spaces.

For this post we are going to change the Content Presenter taskflow. More specific, we are going to add an Update Metadata link on the single item display of the content presenter. We will only change a specific section of the content presenter so I will explain the process on how to know where to find the files and update them.

Finding the correct file and section in the file is the most difficult part about customizing the taskflow. Therefore I will explain the process in this post.

Updating metadata in a WebCenter Content Presenter template

I already made some post explaining that a content presenter template can do more than just present the content. You can add pagination or a read more link but you can also add real functionality that can be useful for the content owner or administrator.

For example in this post I will explain how we can add a link to the content presenter that will open a popup where we can update the metadata of the content.

Updating metadata of the content will be done by using RIDC which is the native API for connecting to WebCenter Content where the content is stored.

In this post I will not only show how to build this template but also how to use RIDC and reuse the connection defined in JDeveloper or Enterprise Manager.

Inter-Component-Communication between Taskflows in ADF and WebCenter

In my Inter Component Communication series I explain how we can allow components to communicate with each other. I already explained how portlets can communicate with each other by using parameters and how you can pass parameters from a portlet to a taskflow.

In this post I will explain how we can allow two taskflows to communicate with each other by using contextual events. This is a concept introduced by the ADF framework. I have to admit, when I develop ADF application I seldom use contextual events but when developing taskflows for WebCenter, it suddenly gets really important. The reason for this is that a portal requires its components to be able to communicate with other components without knowing about these component in advance.

From a portlet this has been standardized by the JSR 286 standard. When working with taskflows we need something similar and this is contextual events. This is the same principle as triggering and consuming events from a portlet. So basically Oracle introduced a portal concept in its ADF framework which is a good thing.

Configuring WebCenter Content for WebCenter Spaces PS5

WebCenter PS5 has been released for a while now and people who have done some extensive testing probably know that there are some issues with content integration.

When Oracle releases a patch set, it releases it for all of the products within a stack. This means that at the same time of the WebCenter Portal PS5, WebCenter Content got his patch set as well. That patch set replaced the folders_g component with the FrameworkFolders component which has more benefits over the folders_g. Especially when it comes to performance.

There is just one slight problem with this change and that is that WebCenter Portal/Spaces is not yet ready for this change. it still uses services that are only available in the folders_g component and not in the FrameworkFolders component.

Best practices for using ADF Business Components in WebCenter

ADF Fusion web Applications and WebCenter Portal applications are two different types of applications. Although WebCenter Portal is based upon ADF it works a little different than a regular fusion web application.

For instance it is a good practice to separate the development of your portal and your taskflows. The reason for this is that you can reuse the taskflows in other portals or you can easily plug them into WebCenter Spaces.

When you are building a portal, you probably have to write some transactional taskflows that will connect to a custom database. A portal is not just about collaborative services or integrating external applications. Most of the time you have to build some functionality and include it into the portal.

Because WebCenter is using ADF, it is a wise decision to build those functionalities with ADF Business Components as your data layer.

When building Business Components for a portal there are a few best practices that I would like to recommend. They help to minimize the integration effort and maximize the reusability of your components which is one of the key features of a proper designed portal.

Using pagination in the WebCenter Content Presenter

A lot has been written about the content presenter and many people say it is a very powerful tool to integrate content from WebCenter Content into your portal. I fully agree with this but sometimes the content presenter lacks functionality that you would think would be out of the box.

One of those functionalities is having pagination when you have a lot of items to display. Suppose that you want to display the contents of a folder or the result of a query and the number of results can be very large, how will you display this in a proper way to your users? Simple, use pagination! But the content presenter does not support this so we will have to build it ourselves.

In this post I will explain how we can create pagination for the content presenter by building a custom content presenter template.

WebCenter 11g PS5 has been released

It's update time again... This time Oracle has released the second patch set for the new WebCenter Portal suite. It is PS5 but we all know that PS3 was a very big update and introduced completely new concepts in WebCenter. So, PS5 is the second patch set after this major update.

In this post you can find a small overview of the changes since PS4. I haven't seen or tested everything yet so I will add more when I encounter more valuable items.

Using dynamic queries in the Content Presenter

In the past I already talked a lot about the Content Presenter. It is very powerful to display content in all sorts of way. It can interact with Site Studio elements and it is easy to use by using its wizard.

One of the hidden gems of the content presenter is not the wizard but the plain old input parameters you would expect from a taskflow. The wizard everybody uses to configure the content presenter is just a facade to hide the complexity of those input parameters. In most cases this is sufficient but when you want to do more complex things, you would soon bump into issues by using the wizard.

Suppose that you want to display a list of news items from different categories and display a filter so the user can select their preferred category. There is no way of doing this by using the normal way. You would need to introduce a parameter in the query of the content presenter.

In this example I will explain how it is done

Oracle Fusion Middleware Partner Community Forum Malaga Summary

The OFM Partner forum in Malaga has just finished and it left some very good memories! This forum was even better than the one in Utrecht last year. A lot of the credits go to Juergen Kress and Hans Blaas who organized this event. They really did a very good job!

The venue of this event was in the NH Hotel at Malaga. A nice hotel with lots of room for all the people. My wife and I checked in on Monday and visited the city together with my colleagues from InfoMENTUM. Malaga is really a nice city with vibrant colours and people.

On Tuesday the event started at noon with registration and a lunch. This was the first opportunity to network and network is what I did. It's nice to see familiar faces from previous events. Some of them I met at the partner forum in Utrecht last year so it was a nice opportunity to catch up on the past year.

Inter-Component-Communication with WebCenter and ADF

In a previous post I discussed how Inter-Portlet-Communication works between two JSR 286 portlets in WebCenter. In WebCenter you can do much more when it comes to wiring two components together. You cannot only wire portlets together but also taskflows and ,components. All 3 types can be used as source or destination and you can easily mix them together.

In this post I will explain how Inter-Component-Communication (ICC) can be setup for portlets. You can download the sample application from here.

I will give an example on how to pass values from a portlet to a taskflow and component and how to use a value from a component as parameter of the portlet.

WebCenter EMG can blow out his first candle!

As from today the WebCenter EMG is one year old. It has not been a very busy year for the EMG but we are growing. WebCenter gains on popularity and Oracle is putting a lot effort into making it a very good product. This reflects on to the number of customers who are using WebCenter which also reflects to the members we can welcome to the EMG.

As of today we have over 150 members, 30 topics and almost 200 messages. I know every start is difficult but I'm glad to see the commitment.

Here's an overview of some of the most popular topics during the last year:

Authorization on WSRP2.0 Portlets
Portlets versus Taskflows
UCM Taskflows versus Open WCM
Friendly URL approach for custom WebCenter implementations
WebCenter Search
Spaces versus Portal Application

As you might see from these responses, some guys from Oracle are also involved to help us out. Thanks to them! They are partially responsible for the success of such an EMG. Without their input we could never have such a high standard of responses. I surely hope they will be able to give their thoughts as well in the future.

WebCenter Portal vs WebCenter Spaces

There have been a lot of questions about when to use WebCenter Portal and when to use WebCenter Spaces. There are specific use cases for each and you can ask yourself a few simple questions that can help you decide what to use. In general WebCenter Spaces is intended for intranet collaboration portals. In previous versions, Spaces has been used because there was no easy way of building a portal with the WebCenter framework. Spaces was just easy because it was there and that's why it has been misused a lot! Since PS3, all good feature are out of the box available in a WebCenter Portal application so you should really look at the correct reason to use Spaces or Portal. In this post you can find a few questions that you can use to help your client or company make the correct decision

Reusing taskflows from an ADF application into WebCenter Spaces

When you are building a portal with WebCenter Spaces, you often want to extend WebCenter Spaces with your own functionality. This can be done by deploying portlets or by adding taskflows to WebCenter Spaces. There are distinct differences on when to go for portlets and when to go for taskflows. In short, when scalability is important you should go for portlets. When personalization is very important you also should go for portlets. If design is very important or integration with the security context then taskflows should be used. For more information on the differences I can point you to another blog post that discusses this topic in more dept.

This post will focus on how to add your own custom taskflows to WebCenter Spaces. Oracle has provided some documentation that explains how to do this. When I was following this documentation I faced some issues that weren't addressed so I will try to explain them here.

Enable Site Studio features in WebCenter Portal

One of the cool features of WebCenter Portal and WebCenter Content is that it integrates quite well into each other. WebCenter Content has a very powerful feature that allows us to create structured information based upon a definition of the data. The data will be stored in XML and we can create several templates to display the content.

These features can be made available in WebCenter Spaces by configuring the OHS properly. With a few tweaks here and there, we can also enable the same features in a custom WebCenter Portal application.

I already made a large tutorial section on how to enable Site Studio in WebCenter and how to work with these region definitions and data files.

The intention of this post is to show how to configure your application so all of the features like inline editing will also work from within WebCenter Portal.

Pages

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer