For what purpose would you use the entity object attribute setting Change Indicator? (Choose the best answer.)
A.
to highlight the attribute in the UI with a border when the original attribute value has been changed
B.
to fire an entity object custom method as soon as the original attribute value has been changed
C.
to automatically lock the corresponding record in the database
D.
to automatically refresh the attribute value if the underlying data in the database is changed by another user
E.
to define an attribute that the framework uses to check whether the update is about to happen on underlying
stale data in the database
Explanation:
By default, during commit operation, ADF scans each changed attribute from the current row and compares
value in the DB. If it locates changed values in DB, reports error about another user changes in the same row.
While this is expected functionality, there are use case when we want to allow commit, even data was changed
already by someone else. For example, in more complex systems, data is updated by PL/SQL procedures, we
don’t want to inform user with error about this. There is a way to override lock method in EO implementation
class, catch lock error and raise lock again. This works, but there is different way – to use Change Indicator.
This property defines specific attribute to be responsible for row data changes tracking, instead of checking
every attribute. Only if Change Indicator attribute value will be changed in DB, then current row changes will be
prevented and user will be informed about someone else changes in the same row.
https://blogs.oracle.com/emeapartnerweblogic/entry/explaining_change_indicator_property_for