The Not Null Filter will check a dynamic parameter before calling the wrapped data provider. If this dynamic parameter does not hold a value (e.q. is null) then the wrapped data provider will not be called. This is a very helpful way of stopping a web service from being called without the correct input arguments.
The Not Null Filter takes one parameter called required-parameter, here you specify the dynamic parameter that is required.
Data Control
<AdapterDataControl id="HrWSData" FactoryClass="oracle.adf.model.adapter.DataControlFactoryImpl" ImplDef="org.adfemg.datacontrol.xml.DataControlDefinition" SupportsTransactions="false" SupportsSortCollection="false" SupportsResetState="false" SupportsRangesize="false" SupportsFindMode="false" SupportsUpdates="false" Definition="org.adfemg.xmldc.demo.view.HrWSData" BeanClass="org.adfemg.xmldc.demo.view.HrWSData" xmlns="http://xmlns.oracle.com/adfm/datacontrol"> <Source> <definition xmlns="http://adfemg.org/adfm/datacontrol/configuration" schema="http://xmldc-sample.appspot.com/HR.xsd" schema-root="DepartmentEmployeesResponse" dc-operation="getDeptEmps"> <data-provider class="org.adfemg.datacontrol.xml.provider.filter.NotNullFilter"> <parameters> <parameter name="required-parameter" value="deptId"/> </parameters> <data-provider class="org.adfemg.datacontrol.xml.provider.data.WSDataProvider"> <parameters> <parameter name="endPointUrl" value="http://xmldc-sample.appspot.com/HumanResourcesService"/> <xml-parameter name="requestElement"> <![CDATA[ <hr:DepartmentEmployeesRequest xmlns:hr="http://adfemg.org/HR"> <hr:departmentId>#{param.deptId}</hr:departmentId> </hr:DepartmentEmployeesRequest> ]]> </xml-parameter> <dynamic-parameter name="deptId" java-type="java.lang.Long"/> </parameters> </data-provider> </data-provider> </definition> </Source> </AdapterDataControl>
0 Comments