Domain Portal

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Saturday, 10 February 2007

TopLink as a Content Repository for WebCenter Portlet

Posted on 05:51 by Unknown
Almost two weeks ago was released Oracle JDeveloper 10.1.3.2, and Oracle WebCenter Suite was included into this release. Main new feature - possibility of using portlets in JSF, all new features are described in this document - New in Oracle JDeveloper (10.1.3.2.0). I have decided to research more deeply functionality of WebCenter Suite and to build sample application based on acquired knowledge. There are very useful tutorials on OTN for this topic - Oracle WebCenter Suite Demos and Samples, and - Oracle WebCenter Framework Tutorial. However, I have not found an answer in those documents about how to use data from Model layer as a content repository for standard portlet. So, I have developed a sample - JSFPortletTopLink.zip.

It was interesting for me to create a content repository for portlet, based on Oracle TopLink object-relational mapping. Developed sample, demonstrates how to use standard portlets with TopLink and how to integrate portlets into ADF application. Sample contains two workspaces, this means that it is based on two independent samples - PortletProvider and PortletConsumer.


PortletProvider implements a portlet along with content repository. PortletConsumer consumes implemented portlet and provides additional logic. Both parts are based on standard HR schema and use TopLink in Model layer.

It is time to describe a business logic of developed application. There are two pages - viewJobs.jspx and editJob.jspx, first page is developed using ADF Faces components and displays a list of jobs, in the second page developed portlet is used. When a job is selected for editing, ADF Faces form is displayed, where job data can be updated. Additionally, a portlet is included into editJob.jspx, this portlet provides a list of employees assigned to the selected job.

In PortletProvider, I'm retrieving employees list by provided jobId, using TopLink Session query.


This method is called from portlet's view.jsp page. So, in such way it is possible to use as a content repository for portlet not only Web page, CSV file or RSS but also data stored in the database, through object-relational mapping.

PortletConsumer consumes deployed portlet and shows it in editJob.jspx. With WebCenter it becomes possible to use portlets in the same page where ADF Faces components are used and even enable communication between a portlet and ADF Faces component. Below I'm demonstrating how it looks in practice.

Let's say we want to edit job entry data for Programmer position:


When Edit button is clicked, selected row jobId attribute value is passed to edit page, where data for edit form and portlet is retrieved using supplied jobId. In editJob.jspx ADF Faces form component and portlet are used:


If we will select another job, for example - Finance Manager:


Then only one employee will be returned by portlet:

Email ThisBlogThis!Share to XShare to Facebook
Posted in ADF, TopLink, WebCenter | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Groovy - Multiple LOV's per Attribute in JDeveloper 11g
    I was blogging previously about multiple LOV's per attribute functionality. I was using RowImpl class for View object in order to calcu...
  • External Transaction Service in Oracle TopLink
    I have developed sample application, in order to demonstrate how to use External Transaction Service (ETS), when Oracle TopLink is used in M...
  • Workaround for Null Value Bug in ADF List Of Values 11g
    Those of you, who are using List Of Values (LOV) component in ADF 11g, most probably already have noticed bug related to Null value. Simple ...
  • Trip to US
    I'm in US this week, Connecticut. Here is the same weather as in Lithuania, it's winter with about -5 degrees in Celsius.
  • Oracle ADF - between 4GL and J2EE is only one step
    According to ADF architecture described in Oracle JDeveloper 10g (10.1.3) Developer's Guide Section 1.1.1 - Framework Architecture and S...
  • Creating new row using CreateInsert operation
    Sample application - CreateInsert.zip , demonstrates how to create editable table with 'create new row' functionality in ADF BC. We ...
  • Show Buttons based on Disclosed Tab
    In 11g it becomes quite common use case to structure application page with tabbed panels. If you develop your pages based on templates, most...
  • Multilanguage in fixed af:selectOneChoice ADF Faces component
    If someone will face a problem how to enable multilanguage support in fixed af:selectOneChoice component, or simply how to bind fixed af:sel...
  • JDeveloper 11g on Mac OS X Leopard
    I'm using Apple Mac Book Pro for about half of a year, but shame for me all this time I was running Windows OS using Apple Boot Camp so...
  • Why I'm here?
    Oracle for me is more then technology, it is a way how I think. So, I'm creating this blog in order to express my knowledge in Oracle Fu...

Categories

  • ADF
  • Apex
  • Apple
  • BPEL
  • Events
  • Forms
  • Groovy
  • JDeveloper 11g
  • Nomination
  • ODTUG Kaleidoscope
  • OFUG
  • Oracle Magazine
  • Oracle OpenWorld
  • Security
  • SOA
  • Spatial
  • TopLink
  • Traveling
  • Uncategorized
  • Vgo Software
  • Web Services
  • WebCenter
  • WebLogic
  • Workarounds

Blog Archive

  • ►  2008 (72)
    • ►  December (2)
    • ►  November (3)
    • ►  October (9)
    • ►  September (4)
    • ►  August (9)
    • ►  July (6)
    • ►  June (10)
    • ►  May (4)
    • ►  April (5)
    • ►  March (7)
    • ►  February (5)
    • ►  January (8)
  • ▼  2007 (65)
    • ►  December (6)
    • ►  November (7)
    • ►  October (6)
    • ►  September (4)
    • ►  August (3)
    • ►  July (4)
    • ►  June (6)
    • ►  May (5)
    • ►  April (6)
    • ►  March (4)
    • ▼  February (5)
      • Oracle Object Types in Oracle ADF
      • Multi-selection feature and ADF Faces af:table com...
      • TopLink as a Content Repository for WebCenter Portlet
      • Using #{row.rowKeyStr} property with Composite Vie...
      • Oracle and snow in Vilnius
    • ►  January (9)
  • ►  2006 (9)
    • ►  December (9)
Powered by Blogger.

About Me

Unknown
View my complete profile