Applies to ADF 11.1.1.2 and WLS 10.3.2
Problem description
1. stop datasource
2. stop app (all requests)
3. start datasource
4. start app (servicing all requests)
Call :/http://<host>:<port>/<context>
Expected
Functional ADF Application
Instead got

Analyzing
a)Take a look into <domain_home>/servers/<servername>/logs/<servername>.log
Caused By: java.lang.ClassCastException: oracle.adf.controller.internal.binding.DCTaskFlowBinding cannot be cast to oracle.adf.controller.internal.binding.DCTaskFlowBinding
at oracle.adf.controller.internal.binding.DCTaskFlowBindingDef.initializeExecutableBinding(DCTaskFlowBindingDef.java:301)
at oracle.adf.model.binding.DCBindingContainerDef.createExecutables(DCBindingContainerDef.java:590)
at oracle.adf.model.binding.DCBindingContainerDef.initializeBindingContainer(DCBindingContainerDef.java:728)
at oracle.adf.model.binding.DCBindingContainerDef.createBindingContainer(DCBindingContainerDef.java:944)
at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer(DCBindingContainerReference.java:152)
at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer(DCBindingContainerReference.java:92)
at oracle.adf.model.BindingContext.get(BindingContext.java:908)
b)
Never seen that before! Where does all those .appmergegen hidden folders coming from?
Action
a) Googling. => not much information on this:(
b) rm -rf .appmergegen*
Test again
1. stop datasource
2. stop app
3. start datasource
4. start app
Call http://<host>:<port>/<context>
=> Application works as expected! But after a few more redeployments the internal error (500) occurs again.
Further research
a) Find out where all those .appmergegen hidden folders coming from? It seems that this leads in the end to a class loading problem.
b) How to make sure, the application will not fall into this situation again?
Any comments are greatly appreciated....