Hello ADF experts, I have been noticing that many big companies are using hibernate for business components instead of ADF business components. And I got the answer for reason is security issue. If that is the case is it a big waste that we have such a rich asset provided by ADF ?
So, we never ever use ADF business components in corporate projects?
Appreciate someone can provide me some justification why hibernate is selected instead of using ADF BCs.
I am a big fan of ADF BCs because in case of Hibernate ...almost everything we need to create manually from scratch.
I have been noticing that many big companies are using hibernate for business components instead of ADF business components.
Maybe because hibernate is open source and ADF BC is proprietary technology(and usually used only in ADF applications)?
Maybe you need to compare hibernate with TopLink (or EclipseLink) ...
And I got the answer for reason is security issue.
I don't see what security has to do with ORM and persistence frameworks(security is usually handled in other app layers, for example: in db or in app view/controller).
If persistence framework provides security features this can be bonus, but this is not reason to discard other frameworks which doesn't provide such features(and ADF BC has security features, for example: Fortune Minds - Oracle ADF: How to apply Security at Entity level in ADF Application ).
Thank you Dario. It is ADF application. But to retrieve data and displaying and manipulating through ADF pages, hibernate is used due to concern that ADF BCs are directly exposed to GUI through data controls which was not accepted by the people who decide what framework to take up. I am curious to know what is the concern here using ADF BC ,data controls combination.
Also, I am assuming there is no additional cost if we have to use ADF BC and I believe, ADF BC comes along with ADF framework without extra cost.
User, I think you use the people who decide which framework to use, have not understood the concept behind the ADF Framework. Check out Overview of Oracle ADF - 12c (12.1.2) which give you a better understanding of the framework. The image in section 1.3 clearly shows that the ADFbc are not directly used in the UI layer. Instead the ADF Model layer (ADFm) is use a the binding layer between business components and UI components.
Next thing is that you can other technologies at various points in the framework buf still use the rest of it. The difference is mostly in the part you have to do yourself to archive the stuff ADF already has build into.
ADF model layer is nothing but data controls. Am I right ? I do not think other than data controls, you have different approach to display ADF BCs on ADF pages. This is obviously known to them. I am not sure what other concern they have..but I will get back to this forum when I hear more from them. I really want to ensure that this rich asset of ADF framework (BCs) is not waste just because of some silly concern of people in the management who decide to go for Hibernate.
note that Hibernate is where we do have TopLink (EclipseLink). For people advocating Hibernate, its good to ask why Hibernate did not become the Java EE reference implementation for EJB but TopLink. Note that ADF BC is a Java EE persistence layer by Oracle that is used by Oracle Fusion Applications and Oracle customers. You are free to choose which business service layer you use. Note that ADF BC has a deep integration with ADF Security, which gives you declarative authorization for what you have to code in Hibernate i guess.
Video - See the SOA section of this page: