Skip to main content

Posts

Oracle ADF vs JET

Java is the leading language in the industry today, and with Oracle ADF we have a great offering for developer looking to be more productive leveraging Java on the Oracle platform. But there are other languages in the market too, and JavaScript is quickly gaining popularity and by many accounts is the second most popular language today. JavaScript is very popular for front end development of web interfaces. ADF and JET target completely different audiences. Below table clarifies differences between these 2 frameworks.
Recent posts

Overview Editor for bc4j.xcfg

This is used to customize the configuration settings for the application pool, connection pool, and transactions. Select the Application Module, then select a configuration from the Configurations list. You can specify a Default Configuration from the dropdown to use with selected application module. Edit the name of the configuration in Details. Its having 3 tabs 1.Database and Scalability 2. Properties 3. Custom Properties Database and Scalability Tab : In Database and Scalability you can mention the JDBC data source definition for each application module. You can choose to connect to a JDBC data source or to a JDBC URL.The default connection type is the default data source. A data source is a vendor-independent encapsulation of a database server connection on the application server. 1. Data sources ( JNDI name) offer advantages over a JDBC URL connection because the data source can be tuned, reconfigured, or remapped without changing the deployed application. 2. JDB

Changing integrated weblogic server class path in 12c

To change the class path/modify/add any new jar file to 12.2.1.2 jdeveloper integrated weblogic server follow below steps. 1. Find the oracle_common\common\bin\commExtEnv.cmd file in Orcale Home     (ex  : C:\Oracle\Middleware12c\Oracle_Home_12_2_1_2\oracle_common\common\bin\commExtEnv.cmd) 2. Place your jar file to \wlserver\common\Sample.jar or some location in Oracle Home 3.  Append %MW_HOME%\wlserver\common\Sample.jar; to WEBLOGIC_CLASSPATH variable or the location where you placed your jar file..

ADF Business Components Data Types

ADF Business Components is compatible with the built-in data types the Java language provides, including strings, dates, and numeric data. In addition to these Java data types, the oracle.jbo.domain and oracle.ord.im packages of ADF Business Components provides types that are optimized for the Oracle database.

IN clause in adf view criteria

You can use below programmatic approach to solve this problem.Create a view criteria progarametically and set attribute value as bind variable.                          ViewObjectImpl view = this.getNsSentenceGroupVO();                 ViewCriteria vc = view.createViewCriteria();             vc.setName("INCriteria");             String inClause = "IN "+groupNames;             ViewCriteriaRow criteriaRow = vc.createViewCriteriaRow();             criteriaRow.setAttribute(" GroupName", inClause);             vc.addElement(criteriaRow);             view.applyViewCriteria(vc, true);             view.executeQuery();             System.out.println(view. getEstimatedRowCount()); This groupNames is coming from below method. It will iterate a ArrayList and give u a single string with well formatted query as string.     public void loadRemovalGroups(){         //getGroupsForRemove         String groups="(";        

Get modified rows from Entitiy Cache

To get the modified rows from entity cache we have getEntityState() method at EntityImpl class. Refer to my previous blog  Accessing EO impl methods from VO impl  where i am overriding the getEntityState() in EOimpl and calling it in VOImpl. We can use methods written or overridden in VOImpl class to AMImpl class. There are different states associated with an entity object. STATUS_UNMODIFIED STATUS_MODIFIED STATUS_NEW STATUS_DELETED STATUS_DEAD We have to check the state or row in our AmImpl class by using the VOImpl method and through this we can distinguish the rows present at vo. Add below code in AMImpl class along with my previous post. public void geCachedRowsCount(){         JobsVOImpl jobsVo = (JobsVOImpl)this.getJobsVO();         RowSetIterator iter = jobsVo.createRowSetIterator(null);             while(iter.hasNext()){             Row row = iter.next();             byte state = jobsVo.getEntityState(row);             System.out.println("Job_id -&

Accessing EOImpl methods from VOImpl

When you have a requirement to access EOImpl level overridden methods or any custom method from VOImpl follow below steps. 1.Create/Override method in your EOImpl class In above example i have overridden the getEntityState method to print the state of my current entity row. 2. To access this method in VOImpl class Create VOImpl and VORowImpl classes for your view object. See the code written in below VOImpl class to access the EOImpl methods. 3. Now you can expose this method to client tier through VO/AM Client Interface. As per your requirement you can use the client interface and achieve the functionality.