On the latest patch of jdeveloper (18.104.22.168.0) a new feature and bugs was introduced in view criteria (http://adfbugs.blogspot.com/2010/01/new-bind-variable-and-view-criteria-bug.html)
The above bugs also effected the functionality of LOVs especially of those that use view criteria, either for selective required (http://adfbugs.blogspot.com/2010/01/selectively-required-criteria-in-lov.html) or for cascading LOVs.
In the current test case I have Employees and I want the List of value of Managers to depend on the department of the employee. I expect when the user has not selected a department the List of values of managers to be empty
Yet when I run application, just when I set department to null I get the following error.
oracle.jbo.AttrValException: JBO-27035: Attribute DepartmentId is required.
User will think that DepartmentId is required, yet only the hidden criterion of LOV is required.
But actually it is just a warning, since if I press ok and submit then the new values are submitted, even though the value of ManagerId is not valid.
If I open ManagerLOV I get again the error and the LOV opens with no data.
If I clear the value of Manager I get the error again.
This is realy confusing and makes view criteria not usable in cascading LOVs.
The workaround we do for these cases is not to use view criteria for cascading LOVs but to put conditions directly in the where clause of the query.
i.e. WHERE DEPARTMENT_ID = :inDepId
Anonymous said... In this case, all you need is to set "Validation" to "Optional" and leave "Ignore Null Values" un-checked.
I tried it and works fine.