Saturday Jun 27, 2015

ADF Logging in Different Applications Deployed on Managed Server by Rohan Walia

clip_image002There 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.

Ok lets start implementing.
Created two ADF Applications. PayRollApp and PartnerApp. Both applications have below mentioned root packages.
PayRollApp : com.company.payroll
PartnerApp : com.comapny.partner
Created a PartnerTest.jspx in PartnerApp having a button which has an actionListener method which logs the log messages.
Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Wednesday Jun 24, 2015

Change Default JSESSION ID Name for ADF Application by Rohan Walia


By Default, every ADF Application writes a JSESSIONID Cookie which maintains the session across the ADF application.
clip_image001
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
Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Thursday May 28, 2015

ADF BC Web Service – Return List of Complex Types by Rohan Walia

clip_image002ADF 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 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 11.1.1.7)
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.
Now Add three variables in the PVO. DepartmentName,ManagerId and IsManagerFlag. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Monday May 11, 2015

IFrame in ADF Application – Menu and Show Page in IFrame by Rohan Walia

clip_image002

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.
We will use af:inlineFrame component to achieve this. Below is the use case.

The above diagram is for consuming application and Links in the menu (TestPage1 and TestPage2) refers to another application and the pages on click will open in right hand side inside Iframe.
Lets get started.
Created an ADF Application which has two pages. This will be deployed before the Iframe Application. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Wednesday Apr 22, 2015

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

clip_image002In 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. Read the complete post here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Monday Apr 20, 2015

Custom Login Page using Login Bean in ADF by Rohan Walia

clip_image002In most of the Oracle ADF Applications, applications have a customized login page which is specific to the application. While configuring ADF Security, it generates a default Login and Error page which is good for testing the environment. But for actual applications , Customized Login page is required for the application. In this post we will be looking at it.

Use Case
Creating a customized login page and login the user programmatically using Managed Bean. Lets get started.
Created a simple ADF Application CustomLoginApplication.
It consist of two JSPX pages. Custom Login and Landing page. Below is the code for custom login page. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Saturday Apr 18, 2015

JpsAnonymousRoleImpl Issue for Custom Login page Using Managed Bean in ADF by Rohan Walia

clip_image002

While implementing Custom Login page using Bean Custom Login Page using Login Bean in ADF, once you do all the steps and run the login you get a nasty exception below:
This example was created using Jdev 11.1.1.7

oracle.security.jps.JpsException: java.lang.IllegalArgumentException: oracle.security.jps.internal.core.principals.JpsAnonymousRoleImpl

Hmm we did all the steps correctly but face this exception while running the CustomLogin Page.
So while troubleshooting the problem, figured out that there is some problem with jazn-data.xml.
First lets removed the annonymous-role which is been given to CustomLogin.jspx.

Now if we again add the anonymous role see below what is there. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Tuesday Mar 17, 2015

Custom Exception Handling in ADF – Model Layer Generic Framework Design by Rohan Walia

clip_image002I have observed that there are lot of users who asks questions on OTN and have problem in designing the custom generic exception handling framework. So in this and next some of the posts I will be describing how we can lay down a generic way to report custom exceptions to the page. These custom exceptions may be mostly for Business Specific errors for which we need to display a custom user friendly message on the page to the user.

In this post we will be seeing how we can customize the error on Model layer and take error messages from a resource bundle defined in the application.

Lets get started. We will first create a generic framework project where we will add exception handling related classes. We give it a name as FrameworkUtil. Framework util project will be dependent on model project from where custom Exceptions will be thrown in the enterprise applications.

First lets set up FrameworkUtil project - ADF Model Project

Created an ADF Model Project with below package structure. Added a resource bundle ErrorBundle.properties which will be having all the Business Errors which can be thrown from the applications model layer.  These errors will be in key value pairs in Error properties file. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Saturday Nov 29, 2014

Seeded Customizations using MDS in Oracle ADF by Rohan Walia

clip_image002In the last post Personalization using MDS in Oracle ADF we saw the power of MDS Framework in Oracle ADF using which Users can personalize pages, components etc according to their own need. MDS saves these changes in MDS Store based on every user and applies on the runtime to the base document.

In Personalization, user is at the driver seat , changing things according to the needs. But there are cases where the application is developed and after there is a requirement of two different flavours of the same application. For example, there is a ADF application and there are two clients. One client wants some fields to be visible and some specific color settings while other client wants other fields to be hidden and different color settings. We can also put in this way, that one client want some regions (task flows) to be displayed and other client says other regions to be displayed.
Now in these cases the , making changes to the existing application will be difficult. Most common solution will be we create two versions of application , each version having specific changes required by the client. Hmm that works good for two clients but what will happen if there are hundreds, thousands of clients. One has to create / maintain same number of versions of applications. More to it, what will happen if there will be a common functionality change which needs to go to all versions. Maintenance will become a nightmare.
So by using Seeded Customizations provided by MDS, changes for specific needs / clients can be done on base document. There will be a single Base Application and changes corresponding to all the clients/layers will be done and these changes will be applied on runtime depending upon which client is using it..

Use Case
:

There is a requirement that there is a ADF application which has one ADF Form on the page. There are two clients "ABCCorp" and "XYZCorp" which will be going to use this application. ABCCorp does not want to show Salary attribute to its users and want Employee ID to be in color "AQUA":
XYZCorp wants to show salary component to users and wants Employee ID background to be in color "LIME" Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Sunday Mar 23, 2014

Af InputDate Default Message hint – Disable by Rohan Walia

When we click on the af:InputDate , As soon as we click inside it, there is a default note hint which comes besides the inputDate field. Below is how it does.

So this works good for some implementations but sometimes client wants to avoid this default behaviour. We had a requirement where client dsnt wanted this default hint note to be displayed on clicking the Input Date field. We will see how we can remove this default behaviour.

First we will write a java script which will over ride the shouldShowHint function which is there in default implementation. Once we are done with the Java Script, we need to use clientListener and use this JS. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Tuesday Mar 11, 2014

Jdev Extensions & Custom Audit Rules by Rohan Walia

Introduction to Oracle Jdeveloper Extensions SDK. Setting up project and developing Custom Rules using Jdev Extensions.


WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Search

Archives
« July 2015
SunMonTueWedThuFriSat
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
       
Today