My Oracle Support Banner

Different Behaviour Of Introspection On Different JREs On Windows With Oracle Application Server 10.1.3.5 (Doc ID 1286054.1)

Last updated on OCTOBER 17, 2023

Applies to:

Oracle Containers for J2EE - Version 10.1.3.5.0 and later
Information in this document applies to any platform.

Symptoms

When introspecting bof.TransactionVO in SUN JRE 1.6.0_19-b04 in an Oracle 10.1.3.5 application server on a windows environment (Microsoft(R) Windows(R) Server 2003 Standard x64 Edition) , the following output is obtained:


Printing PropertyDescriptors of class : bof.TransactionVO
-------------------------------------
props[i].getName(): class
props[i].getPropertyType():class java.lang.Class
props[i].getShortDescription() :class
props[i].getReadMethod(): public final native java.lang.Class java.lang.Object.getClass()
props[i].getWriteMethod(): null
IndexedPropertyDescriptor : false

props[i].getName(): transactionType
props[i].getPropertyType():class java.lang.String
props[i].getShortDescription() :transactionType
props[i].getReadMethod(): public java.lang.String bss.TransactionVO.getTransactionType()
props[i].getWriteMethod(): public void bss.TransactionVO.setTransactionType(java.lang.String)
IndexedPropertyDescriptor : false



In this output, the “readmethod” and the “propertytpe” for trasactionType property are correctly getting evaluated to getTransactionType() and java.lang.String respectively. So the application works perfectly fine in this environment.



But when introspecting bof.TransactionVO in IBM JRE 1.6 in an Oracle 10.1.3.5 application server on an AIX environment (AIX 6.1.4.0), a different output is obtained as shown below:



Printing PropertyDescriptors of class : bof.TransactionVO
-------------------------------------
props[i].getName(): class
props[i].getPropertyType():class java.lang.Class
props[i].getShortDescription() :class
props[i].getReadMethod(): public final native java.lang.Class java.lang.Object.getClass()
props[i].getWriteMethod(): null
IndexedPropertyDescriptor : false

props[i].getName(): transactionType
props[i].getPropertyType():null
props[i].getShortDescription() :transactionType
props[i].getReadMethod(): null
props[i].getWriteMethod(): null
IndexedPropertyDescriptor : true



Notice the null values present for getPropertyType(), getReadMethod(), and getWriteMethod(). Also notice that this propertyDescritpor type is showing up as an indexedPropertyDescriptor. Looks like the getter public TransactionTypeVO getTransactionType(int index) in the backoffice TrasactionVo is considered as a valid read method for the property “transactionType”.

Because of this the JXpath query to find out the value of trasactionType property fails and this is blocking the application upgrade Java 1.5 to 1.6.

The same code base is working perfectly fine in JRE 1.5 environments on both AIX and Windows on Oracle Application Server 10.1.3.3.

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.