ADF Seeded Customizations in JDeveloper 11.1.2.1
- by Dmitry Nefedkin
For the ADF training I needed a demo application that
shows ADF seeded customizations functionality. I’m using the latest JDeveloper
11.1.2.1, so I decided to download the “Customizing and Personalizing an ADF Application”
completed tutorial application available here
I’ve downloaded and unzipped the CustomizeApp.zip and opened the CustomizeApp.jws in the JDeveloper 11.1.2.1 using the
Customization Role. The result was the following: MDS-00036 “Cannot instantiate the class
oracle.model.mycompany.SiteCC”.
I thought: “OK, that’s because SiteCC class is not accessible to JDeveloper classloader, I should jar it and put to the <JDEVELOPER_HOME> \jdev\lib\patches like I did in JDeveloper 11.1.1.5 and ealier”. No way, it JDeveloper 11.1.2 we do not have this patches directory at all! It seems that is because of the new architecture of the JDeveloper plugins based on OSGi. I looked through the tutorial and have not found any step related to the jar–ing the SiteCC class and moving it to the specific directory. So, JDeveloper 11.1.2 is smart enough to find my customization class and add it to the classpath without any specific actions from my side. But why am I getting this “cannot instantiate the class” error?I’ve checked at the the full path to my CustomizeApp.jws - c:\temp\ADF personalizations\CustomizeApp\CustomizeApp.jws and noticed the space in the name of the directory. Was it the root cause of the issue? Yes! I’ve renamed the ADF personalizations folder to pers, opened the c:\temp\pers\CustomizeApp\CustomizeApp.jws, and received the expected behaviour:
So, be aware of the spaces in the paths when working with JDeveloper…