Saturday, May 9, 2015

Change Default JSESSION ID Name for ADF Application

By Default, every ADF Application writes a JSESSIONID Cookie which maintains the session across the ADF application.

The name JSESSIONID is default and can be seen in browser cookies.

Use Case : There might be scenario where this default name required to be changed. One example can be that there is a requirement for running two applications , one ADF Application and other might be existing application. The existing application already use JSESSIONID as cookie name for session management. In that case there will be a conflict between the two applications. In order to solve this we need to give different name of SessionId for ADF Application.

Created a simple ADF application

Wednesday, April 29, 2015

Consuming websevice in ADF with change in WSDL URLs between different Environments.

In projects where Web Services are consumed, most of the problems come when webservcies are deployed on different environments and url of Service/WSDL gets changed. In consuming application proxys are generated using on environment Service/WSDL and when application moves to another environments, the poxys need to consume the services deployed on that particular environment.

To achieve this requirement, there needs to be some mechanism or way where we can configure the environment Service URL in the consuming application and deploy the same to use the correct environment service.

Created a Simple Web Service and deployed it on both Local Integrated Server and Stand Alone server.

Tuesday, April 21, 2015

ADF Logging in Different Applications Deployed on Managed Server

There are many detailed useful blogs on ADF Logging which provide full details on understanding the details and how to implement and configure it.

This post is for my future reference as how to enable/configure ADF Logging for multiple applications deployed on Weblogic Managed Server.

Use Case : Enable ADF Logging for multiple applications deployed on Weblogic Managed Server.

Lets Get Started.

Important thing to understand here is that for ADF Logging to be implemented correctly Package Structure for the application plays a very important role. So as a common/best practice , package structures should be defined correctly for all the Managed Beans/Java Classes in the application. Also packages structures should be able to differentiate the ManagedBeans/Java Classes in different applications.

Ideally a unique root package name for the application should be given at project creation time in Jdeveloper.

Sunday, April 12, 2015

ADF BC Web Service - Return List of Complex Types

ADF Business Components can be exposed as SOAP Services. Application Module provides Service Interfaces as a way to define operations for the services to be exposed. Custom methods written in AMImpl class can also be exposed as operation of web services.

But one of the limitation is that there is restriction on return types from the services exposed as service interface from Application Module.

In this post we will see how easily we can develop a web service using ADF BC Service Interface and can tweak/use one of the given returnType List<ViewRowImpl>  to return list of complex type object.

Use case here is to create an operation in ApplicationModuleImpl class to return List of Object consiting of three variables -  DepartmentName,ManagerId,IsManagerFlag and expose the operation as ADF BC Service Interface SOAP Service. (Jdeveloper

So Lets get started

Created a simple ADF Web Application using HR Schema and created DepartmentsEO , VO and AM and there respective Java Classes.

Create a Programmatic VO - WSResultPVO which will be returned from the operation of the WebService.

Wednesday, March 11, 2015

IFrame in ADF Application - Menu and Show Page in IFrame

ADF Applications uses power of reusable task flows to be embed as regions in the page, which can be refreshed based on the use cases.

But there are some requirements by the clients which still emphasize on using Iframe to display different applications inside one application.

Suppose there is a requirement where there are 3 applications A,B and Consuming Application. All three applications A,B and Consuming needs to be deployed as separate EAR(Applications) and Consuming App needs to display the A and B Applications pages inside its main page.

Portal architecture can also fit for this requirement but if there is only ADF you need to implement this, the only choice to do is using Iframe.

In this post I will explain you how we can create a menu and show another application in IFrame in ADF Application.

Friday, February 27, 2015

ADF Bindings & Data Controls - NIAIOUG Webinar

Presented ADF Bindings and Data Controls webinar session for February event. Below is the presentation.

Friday, February 13, 2015

Deploy ADF Library Jar as shared library and refer it from Consuming App

In this post I will explain a way to create an ADF application consisting of task flows as ADF Library jar and deploy it as shared library and then refer it in your Consuming Application. In this scenerio, we will not be creating a WAR, rather we will be deploying ADF Library Jar as shared library.
In this case we dont need to create weblogic.xml . We will use weblogic-application.xml which is already there in META-INF folder when we create ADF Application.

Created an ADF Application TaskFlowFirstApp.

The TaskFlowFirstApp is just having a TaskFlow with one fragment which displays Departments table out of DepartmentsVO.

The Task Flow application is deployed as a ADF Library Jar.  While creating the deployment profile for ADF Library Jar, need to add the MANIFEST.MF File like below.