ADF BC : ViewCriteria validation

hi
Please consider this scenario:
(1) suppose we want some validation on changes on SCOTT.EMP rows
- EMP.EMPNO has to be a number
- EMP.JOB has to be 3 or more characters in length
- EMP.HIREDATE should be in a current two month window
(2) suppose we want the same validation on values entered to search for SCOTT.EMP rows
- EMP.EMPNO has to be an exact number (no characters or ranges allowed, or empty to find all)
- EMP.JOB has to be 3 or more characters in length (or empty to find all)
- EMP.HIREDATE should be in a current two month window (this particular search does not allow to search for older hires)
When using ADF BC, typically the validation in (1) ends up in Entity Objects.
In ADF BC a query-by-example search, as in (2), can be done using ViewCriteria.
question:
If we want to reuse the "code" that does these validations, in both (1) and (2), how do we best approach this?
many thanks
Jan Vervecken

Thanks for your reply Z.
I'm not sure when "moving" validation to another application layer, and creating some kind of "reverse dependency" between application layers in doing so, would be a preferred approach. Although I realize that validation and reuse could have some compromises in its implementation.
But in my scenario I think we stay inside the Business Service implementation layer, ADF BC, when using Entity Object validation and ViewCriteria (validation).
Maybe the focus of my question should be more on "ViewCriteria validation" rather than on the reuse (although it is part of the problem).
regards
Jan

Similar Messages

  • ADF View object validation. Cannot have same column value multiple time.

    Hi Expert,
    I have a ADF viewobject validation question. I have the Department and employee view objects. Each department have multiple employees. (may be u can also assume. the employee name is an VO attribute not the database field)
    I need to implement the following validation rule
    One department shouldn't have same employee name. How can i implement this validation rule in the ADF-BC.
    Looking forward ur expert suggestions. Thanks
    -t

    Assuming that the employee name (which you have said is a transient attribute) is created by concatenating some other fields, you could, I suppose create a unique index in the DB or a unique validator in the EO to ensure that the department ID (assume you have such an attribute) and the fields that make up the name are unique. It seems kind of unusual to be validating a transient field like this.
    John

  • ADF View Accessor Validation with Bind Variable

    Hi
    I need to solve the following requirement using a view accessors and bind variables;
    1. User can select a value for a attribute from LOV which is unfiltered.
    2. User can manually edit code into the same attribute as in 1 above, which needs to be validated.
    As the data set for the attribute is large, I need to be able to validate 2 using a query with a where clause.
    My approach has been;
    1. I have a view object for the source lookup table, ProductVO.
    2. I have created a view criteria on ProductVO that accepts a bind variable, pProductCode.
    3. On my OrderEO I have a attribute, productCode.
    4. I create a new view accesor on the OrderEO using the view criteria created in point 2.
    5. I have lft the bind variable parameter blank, as I need to be able to dynamically pass a product code at run time.
    6. On my OrderVO for the productCode attribute, I have create a LOV, based on the ProductVO. This will ensure that the user can view and search all products if needed.
    What I am not getting working;
    1. How can I pass the attribute value to the view accessor at runtime when the value is manually captured.
    2. Ensure that if a value is selected from the LOV, that the view accessor validation does not get invoked.
    What I have tried to solve point 1;
    1. I created a validator on the productCode attribute on the OrderEO as a list validator using the view accessor as my list. I am not sure how to get the bind variable populated. Leaving out the bind variable, I assume, would cause the value to be validated against all my products.
    2. I then tried using a method validator and passing in the productCode value and querying the view accessor.
    3. I have not yet tried using Key Exists, is this maybe the missing link/trick?
    All help will be considered a early christmas gift!!

    Hi
    I have found that when using validation type Key Exists and the VO is in the local application, then the bind variable is available in the Create Validation wizard. When I try and create a validator on a VO that is core to all my applications, then I put that VO into an ADF library, the bind variable parameter is not available for mapping to my entity object attribute, even though I can select the VO to create a view accessor from the ADF library.
    Possible bug?

  • Confirmation Dialog in ADF box if validation fails

    Hello All,
    When the user hits Go, validations are run in myClass. Some of the validations are not mandatory but I still want to confirm with the user if he/she is sure to proceed. So when the validation fails I want to dialog box asking the user "Are you sure"?
    Please Help!!!!!!!!!
    Thanks,

    Hello All,
    When the user hits Go, validations are run in myClass. Some of the validations are not mandatory but I still want to confirm with the user if he/she is sure to proceed. So when the validation fails I want to dialog box asking the user "Are you sure"?
    Please Help!!!!!!!!!
    Thanks,

  • JDeveloper ADF Change title validation error messages

    Im using JDeveloper 12c with ADF and i was wondering how can i change those titles.

    What titles are you talking about and what do you want to change?
    Timo

  • How can i add multiple validations for a single input box in adf?

    hi,
    i want to add multiple validation for a single input text control in adf like number validation and its existence in database.
    MY JDEV VERSION IS 11.1.1.5.0
    pls help !!!!

    Hi,
    1.I want to validate if the value entered is pure integer
    Option 1-
    select the component and in the Property Inspector, in the "Core" category select a "Converter" format, select javax.faces.Number, if the user put a string, adf show a dialog error or message error...
    Option 2-
    or use the Regular expression:-
    http://jdevadf.oracle.com/adf-richclient-demo/docs/tagdoc/af_validateRegExp.html
    https://blogs.oracle.com/shay/entry/regular_expression_validation
    Also check this:-
    http://docs.oracle.com/cd/E15523_01/web.1111/b31973/af_validate.htm#BABHAHEI
    Option 3-
    Frank in his great book 'Oracle Fusion Developer Guide' shows a example using a javascript for input which is allowed only for numbers. You can manipulate for your requirement.
    Here is the code:
    function filterForNumbers(evt) {
        //get ADF Faces event source, InputText.js
        var inputField = evt.getSource();
        var oldValue = inputField.getValue();
        var ignoredControlKeys = new Array(AdfKeyStroke.BACKSPACE_KEY, AdfKeyStroke.TAB_KEY, AdfKeyStroke.ARROWLEFT_KEY, AdfKeyStroke.ARROWRIGHT_KEY, AdfKeyStroke.ESC_KEY, AdfKeyStroke.ENTER_KEY, AdfKeyStroke.DELETE_KEY);
        //define the key range to exclude from field input
        var minNumberKeyCode = 48;
        var maxNumberKeyCode = 57;
        var minNumberPadKeyCode = 96;
        var maxNumberPadKeyCode = 105;
        //key pressed by the user
        var keyCodePressed = evt.getKeyCode();
        //if it is a control key, don't suppress it
        var ignoreKey = false;
        for (keyPos in ignoredControlKeys) {
            if (keyCodePressed == ignoredControlKeys[keyPos]) {
                ignoreKey = true;
                break;
        //return if key should be ignored
        if (ignoreKey == true) {
            return true;
        //filter keyboard input
        if (keyCodePressed < minNumberKeyCode || keyCodePressed > maxNumberPadKeyCode) {
            //set value back to previous value
            inputField.setValue(oldValue);
            //no need for the event to propagate to the server, so cancel
            //it
            evt.cancel();
            return true;
        if (keyCodePressed > maxNumberKeyCode && keyCodePressed < minNumberPadKeyCode) {
            //set value back to previous value
            inputField.setValue(oldValue);
            evt.cancel();
            return true;
    2.I want to check if the value exists in my respective DB You must be having EO or VO if you want to validate with database in that case use the solution suggested by Timo.
    Thanks
    --NavinK                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • ADF RegExp Validator ??? how to change Error Messege ?

    what is the key for the Error Massage in the ADF Regular Expression validator.
    Message was edited by:
    JOKe

    Timo, Thanks for Guidance and sugession.
    actualy for ADF component Internationalization working properly, but the Validators are defined in .java file and from that we have to bind our messages. we have created two properties file , one for English content and another for Arabic . But Still in Arabic conversion. the English message is coming. Is am i going in wrong way?.....i am just giving you highlight of my module......
    1) My Validation is for Date i.e. "from date should not be greater than to date", which i have define it in .java file. At first we have Hardcodef the message,but as per the requirement we have to translate this message into Arabic one.
    2)the two property files we have defined are abc_en.properties (for english) and abc_ar (for arabic).
    3)now in java file we have declare one String variable "res" and insted of sop we have defined one method
    MessageUtil.messageInfoWithTitle(res.getString("NEW.DATE.TITLE"),
    res.getString("NEW.DATE.WARNING.MESSAGE"));
    so that whenever we call this method it will take these key values and depending on the locale this message should get display.
    So what is wrong thing i did? Please help me out.

  • Usage of ADF's validation and custom validation together ??

    Hello all..
    My apologize if this query already in place...
    Well, I've a situation where which I need a way to combine/club my application specific validation error messages with the ADF component's messages.
    For example:
    1) ADF's component validator:
    <af:selectInputDate label="#{msg.dob}" value="#{bean.DOB}" showRequired="true" >
    <f:convertDateTime type="date" pattern="yyyy-MM-dd"/>
    <af:validateDateTimeRange minimum="#{action.minDate}" maximum="#{action.todayDate}" notInRangeMessageDetail="#{msg.dateRange}" />
    </af:selectInputDate>
    2) Also, I've my business specific custom validations perfomed on click of action button on my form. Where I use ..
    public void addFacesMessage(Severity msgSeverityType, String message)
    FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(msgSeverityType, message, message));
    for adding the error messages to context -
    As part of the life cycle, the validators in the form level is fired first and I don't have scope for the request processing/action in order to run thru my buisness method. So always my component's error messages are fired alone - This way my custom validations are not invoked. Is there a way that we can combine both set of error messages together and render them as a common error msg list using <af:messages> tag ?
    If so, please provide me the link to the article!!!
    Your help on this context will be very helpful....Thanks in advance!!!

    Hello all..
    My apologize if this query already in place...
    Well, I've a situation where which I need a way to combine/club my application specific validation error messages with the ADF component's messages.
    For example:
    1) ADF's component validator:
    <af:selectInputDate label="#{msg.dob}" value="#{bean.DOB}" showRequired="true" >
    <f:convertDateTime type="date" pattern="yyyy-MM-dd"/>
    <af:validateDateTimeRange minimum="#{action.minDate}" maximum="#{action.todayDate}" notInRangeMessageDetail="#{msg.dateRange}" />
    </af:selectInputDate>
    2) Also, I've my business specific custom validations perfomed on click of action button on my form. Where I use ..
    public void addFacesMessage(Severity msgSeverityType, String message)
    FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(msgSeverityType, message, message));
    for adding the error messages to context -
    As part of the life cycle, the validators in the form level is fired first and I don't have scope for the request processing/action in order to run thru my buisness method. So always my component's error messages are fired alone - This way my custom validations are not invoked. Is there a way that we can combine both set of error messages together and render them as a common error msg list using <af:messages> tag ?
    If so, please provide me the link to the article!!!
    Your help on this context will be very helpful....Thanks in advance!!!

  • Validation Errors - Messages Presentation

    By default, error messages associated with validations are displayed in popup dialogs for client-side validations or as a message on the page for server side validations.
    I have a requirement that both validations need to be displayed as popup messages.
    Is this possible to achieve with ADF Faces? If so which article / document do you recommend me reading ?
    Thanks,
    Claudio.

    Yes, requirement is to be a Javascript alert window (same as it is done right now by ADF Faces when validations are done on the client).
    Is there other option available apart from that of displaying a message on the page for server side validations ?
    Thanks,
    Claudio.

  • How to refresh View bind variables or is this a bug in Entity Validation?

    Maybe I am missing something. Here is the scenario:
    1. I got a create/edit form with a field (*tfA*) that is a af:selectInputText that launches a search form pop up.
    2. The form (which is tied to an Entity ADF object) has validations -both attribute specific and global (for lack of better term..) set up in the Entity Object Editor wizard.
    3. I noticed that when a global validation fails, when i launch the search form from tfA, it ignores whatever search criteria I enter (ie it retrieves all rows)
    Otherwise, the pop up search form works perfectly. I am wondering if I need to reset the bindVariable values somewhere or if it has something to do with a refreshCondition. What confuses me though is that it works just fine if the global (ADF Entity) validations don't fail.
    The pop up search form uses the default ExecuteWithParams action listener that calls a view with bindvariables. My JDev version is 10.1.3.4
    Any help is appreciated. Thank you.

    The issue turns out to be that the Global Entity Validation continues to fire even after you click on the find button on your selectInputText component. The Entity validation is interrupting the call to the View Object in my pop up search window because somehow clicking search on the pop up is submitting the originating form.
    I am still not sure if this is a bug that needs to be addressed or I was doing something odd but the solution is the following:
    in your *<af:selectInputText />,* add the following: *actionListener="#{bindings.Rollback.execute}"*
    This will prevent the validation from firing because it thinks that you are trying to submit the form when all you're doing is actually launching a search pop up.
    Hope that helps.
    Edited by: rrey on Aug 3, 2009 3:58 PM

  • How to create new or check current business event in Oracle INV/PO?

    Hi Gurus,
    How can i define/create new business event related to items or suppliers?
    I know we need to login to WF admin responsibility. But i just wanted to where we can able to create event from frontend and that too from inventory or purchasing responsibilities.
    I have collected five from oracle.apps.inv.item realted to items and four related to suppliers.
    Could you please help me in how to create Business events from frontend and that to from oracle inventory.. and even i would like to here some thing on trading partners setups also.
    I'm new to this Business events, hence required your help on high priority.else send me an document with existed business events.
    Awaiting on your response.
    Regards,
    Ajay

    No, in this case, I'm using standard JSP with ADF and struts validator.
    If I don't use struts validator and there are errors (such as putting a string into a number which produces a jbo-25009), the list value will be retained.
    When using the validator, it appears that it is NOT retained.
    I've written some code to attempt to set the list element back, which "looks like" it's working right now.
    There's still a problem with the second scenario:
    1. user clicks checkbox and hits [submit]
    2. get's error - you have to enter 5 address items
    3. User wants to backout, so he unchecks the box and resubmits
    4. The box redisplays as "checked"
    SO, at that point, I thought... can't I use YOUR EXAMPLE on how to handle a checkbox.
    I place some code in the reset method of the form to perform this:
    map.put("AddressChangeFlag", (String) "" );
    (that is, I've detected via the request that this flag is null), so I'm trying to make sure it retains it!
    I do that and it runs into a problem during the processUpdateModel aT:
    BindingContainerValidationForm updateForm= (BindingContainerValidationForm) actionContext.getActionForm();
    //Get the binding for our particular column JUCtrlAttrsBinding checkBoxBinding = (JUCtrlAttrsBinding)updateForm.get("AddressChangeFlag");
    call, with an error:
    JBO-29000: Unexpected exception caught: java.lang.ClassCastException, msg=java.lang.String
    java.lang.String
    The value for updateForm.get("AddressChangeFlag") is "", which I'm assuming means the form field is no longer in the request object??
    I'm lost at this point, and have been working on it for more than 1 day.
    Thanks for responding though, and I await feedback ;)

  • How to display values after doing some business logic in data action

    hi guys i got the same problem but iam unable to display the values..in my display page when iam trying to do some business logic in my data action class..
    can u guys help me out
    iam pasting my code which iam working here
    my struts-config.xml
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
    <form-beans>
    <form-bean name="DataForm" type="oracle.adf.controller.struts.forms.BindingContainerActionForm"/>
    </form-beans>
    <action-mappings>
    <action path="/inputform" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataForwardAction" name="DataForm" parameter="/inputform.uix">
    <set-property property="modelReference" value="inputformUIModel"/>
    <forward name="success" path="/inputAction.do"/>
    </action>
    <action path="/inputAction" className="oracle.adf.controller.struts.actions.DataActionMapping" type="order.view.InputAction" name="DataForm">
    <set-property property="modelReference" value="displaypageUIModel"/>
    <forward name="success" path="/displaypage.do"/>
    </action>
    <action path="/displaypage" className="oracle.adf.controller.struts.actions.DataActionMapping" type="oracle.adf.controller.struts.actions.DataForwardAction" name="DataForm" parameter="/displaypage.uix">
    <set-property property="modelReference" value="displaypageUIModel"/>
    </action>
    </action-mappings>
    <message-resources parameter="order.view.ApplicationResources"/>
    </struts-config>
    my input form uix
    <?xml version="1.0" encoding="windows-1252"?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:html="http://www.w3.org/TR/REC-html40"
    expressionLanguage="el">
    <content>
    <dataScope xmlns="http://xmlns.oracle.com/uix/ui">
    <provider>
    <!-- Add DataProviders (<data> elements) here -->
    </provider>
    <contents>
    <document>
    <metaContainer>
    <!-- Set the page title -->
    <head title=""/>
    </metaContainer>
    <contents>
    <body>
    <contents>
    <form name="form0" method="post">
    <contents>
    <messageTextInput model="${bindings.password}" text="username"/>
    <messageTextInput model="${bindings.username}" text="password"/>
    <submitButton text="submit" event="success" destination="inputAction.do"/>
    </contents>
    </form>
    </contents>
    </body>
    </contents>
    </document>
    </contents>
    </dataScope>
    </content>
    <handlers>
    <!-- Add EventHandlers (<event> elements) here -->
    </handlers>
    </page>
    my display uix
    <?xml version="1.0" encoding="windows-1252"?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:html="http://www.w3.org/TR/REC-html40"
    expressionLanguage="el">
    <content>
    <dataScope xmlns="http://xmlns.oracle.com/uix/ui">
    <provider>
    <!-- Add DataProviders (<data> elements) here -->
    </provider>
    <contents>
    <document>
    <metaContainer>
    <!-- Set the page title -->
    <head title=""/>
    </metaContainer>
    <contents>
    <body>
    <contents>
    <form name="form0">
    <contents>
    <messageStyledText model="${bindings.password}" prompt="Prompt 0"/>
    <messageStyledText model="${bindings.username}" prompt="Prompt 1"/>
    </contents>
    </form>
    </contents>
    </body>
    </contents>
    </document>
    </contents>
    </dataScope>
    </content>
    <handlers>
    <!-- Add EventHandlers (<event> elements) here -->
    </handlers>
    </page>
    my model bean
    package order.model;
    public class TestBean
    private String username;
    private String password;
    public TestBean()
    public String getUsername()
    return username;
    public void setUsername(String username)
    this.username=username;
    System.out.println("the username after actions class:"+username);
    public String getPassword()
    return password;
    public void setPassword(String password)
    this.password=password;
    my data Action class
    package order.view;
    import oracle.adf.controller.struts.actions.DataAction;
    import oracle.adf.controller.struts.actions.DataActionContext;
    import oracle.jbo.uicli.binding.JUCtrlActionBinding;
    import oracle.jbo.uicli.binding.JUCtrlAttrsBinding;
    import order.model.TestBean;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionForward;
    public class InputAction extends DataAction
    * Delegate to the Struts page lifecycle implementation
    * {@link StrutsJspLifecycle#findForward findForward}
    * @param actionContext the lifecycle context for the DataAction
    * @throws Exception
    protected void findForward(DataActionContext actionContext) throws Exception
    // TODO: Override this oracle.adf.controller.struts.actions.DataAction method
    //super.findForward(actionContext);
    TestBean testbean=new TestBean();
    System.out.println("this is action form"+actionContext.getActionForm());
    String username=(String)((JUCtrlAttrsBinding)actionContext.getBindingContainer().findCtrlBinding("username")).getInputValue();
    System.out.println("this is username"+username);
    String username1=username+"hye wats up";
    testbean.setUsername(username1);
    ActionForward forward=actionContext.getActionForward();
    ActionMapping mapping =actionContext.getActionMapping();
    System.out.println("this is mapping"+mapping);
    mapping.findForward("success");
    // To handle an event named "yourname" add a method:
    // public void onYourname(DataActionContext ctx)
    // To override a method of the lifecycle, go to
    // the main menu "Tools/Override Methods...".
    check this out iam unable to display in my display page so help me out if any one can

    No, in this case, I'm using standard JSP with ADF and struts validator.
    If I don't use struts validator and there are errors (such as putting a string into a number which produces a jbo-25009), the list value will be retained.
    When using the validator, it appears that it is NOT retained.
    I've written some code to attempt to set the list element back, which "looks like" it's working right now.
    There's still a problem with the second scenario:
    1. user clicks checkbox and hits [submit]
    2. get's error - you have to enter 5 address items
    3. User wants to backout, so he unchecks the box and resubmits
    4. The box redisplays as "checked"
    SO, at that point, I thought... can't I use YOUR EXAMPLE on how to handle a checkbox.
    I place some code in the reset method of the form to perform this:
    map.put("AddressChangeFlag", (String) "" );
    (that is, I've detected via the request that this flag is null), so I'm trying to make sure it retains it!
    I do that and it runs into a problem during the processUpdateModel aT:
    BindingContainerValidationForm updateForm= (BindingContainerValidationForm) actionContext.getActionForm();
    //Get the binding for our particular column JUCtrlAttrsBinding checkBoxBinding = (JUCtrlAttrsBinding)updateForm.get("AddressChangeFlag");
    call, with an error:
    JBO-29000: Unexpected exception caught: java.lang.ClassCastException, msg=java.lang.String
    java.lang.String
    The value for updateForm.get("AddressChangeFlag") is "", which I'm assuming means the form field is no longer in the request object??
    I'm lost at this point, and have been working on it for more than 1 day.
    Thanks for responding though, and I await feedback ;)

  • Error message display both key and value

    Hi,
    I've an alt key check & if the validation fails then the error message pops-up and displays :
    Error
    JBO-SUB_TYPE_CODE_ALREADY_EXIST: The sub type code already exists.
    I'm not sure why is it displaying the key (JBO-SUB_TYPE_CODE_ALREADY_EXIST:) part also in the message.
    Can someone tell me how to suppress the key part in the error message and just display the message (The sub type code already exists.).
    Thanks,
    -Gaurav

    Hi,
    If you want to avoid the roundtrip to the database you can also create a uniqueKey validator in the Entity Object
    were the AltKey exists. In the failure handling of the validator set the message that you want to be displayed.
    You can see an example of this here: http://www.gabrielsideras.com/2010/09/28/adf-unique-key-validation/
    Gabriel

  • RichQuery Component - not saving criteria while Saving Preference

    I am using RichQuery component to advantage of saving preferences and picking them to execute it once saved. Using the out-of-box component with no customization.
    Criteria values are not as part of saving preferences.
    Ex. Ran the page, then enter criteria like employee name and then hit search button. It displays the result. Now saving preference using save button. I am thinking employee name(what i entered) will be saving as part of perference. Does this save criteria values? Somehow not saving it. Can anyone help me fixing this problem.
    Thanks

    Yes, I am using ADF BC viewcriteria for creating query component. Please try the sample from the below link
    http://andrejusb-samples.blogspot.com/2008/11/jdevadf-sample-adf-query-component-and.html
    Run the main.jspx file -> enter some criteria -> search -> then save -> give a name -> select the criteria from the dropdown.
    Thanks

  • How can i validate a Field so that it can accept only Numbers

    can any one help me to validate a filed so that it accepts only numbers if not alert user (client side JavaScript alert message)
    Iam using JSF and ADF BC as the Technologies in my application ..
    my requirement is to validate a filed so that i can accept only numbers in my jspx page..
    I had used ADF regularExpression Validator do so... but it results in exception
    java.lang.IllegalArgumentException: 'value' is not of type java.lang.String.
         at oracle.adf.view.faces.validator.ValidatorUtils.assertIsString(ValidatorUtils.java:36)
         at oracle.adf.view.faces.validator.RegExpValidator.validate(RegExpValidator.java:103)
         at oracle.adf.view.faces.component.UIXEditableValue.validateValue(UIXEditableValue.java:378)
    <af:validateRegExp pattern="[0-9]*"
    noMatchMessageDetail="Please enter Numbers only"/>
    Using validateRegExp i can only validate a field that accept String type data ..

    Hello experts,
    Am seeing the same problem while trying to validate an inputtext field that can only accept numbers. This input filed is part of a table ..Data expected here is an integer
    since that is what is gotten from my ejb/sent for update to the db.
    <af:inputText value="#{row.daysToReview}"
    required="#{bindings.AdminResultBeanresultBeanArray.attrDefs.days.mandatory}"
    columns="#{bindingsAdminResultBeanresultBeanArray.attrHints.days.displayWidth}"
    binding="#{backing_Admin.inputText2}"
    id="inputText2"
    label="#{res['admin.daysheader']}"
    autoSubmit="true">
    <af:validateRegExp pattern="[0-9]+"
    noMatchMessageDetail="Please enter a number"/>
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.AdminResultBeanresultBeanArray.formats.days}"/>
    </af:inputText>
    java.lang.IllegalArgumentException: 'value' is not of type java.lang.String.
    at oracle.adf.view.faces.validator.ValidatorUtils.assertIsString(ValidatorUtils.java:36)
    at oracle.adf.view.faces.validator.RegExpValidator.validate(RegExpValidator.java:103)
    at oracle.adf.view.faces.component.UIXEditableValue.validateValue(UIXEditableValue.java:378)
    <af:validateRegExp pattern="[0-9]*"
    noMatchMessageDetail="Please enter Numbers only"/>
    Using validateRegExp i can only validate a field that accept String type data ..
    Thanks in advance.

Maybe you are looking for

  • Multiple times constructors calling in Myfaces

    Hi i m fasing multiple times constructor calling for myfaces programs i have created a small web appl. with one text box and one submit button, to test this behaviour. i have used this sample to get web page enter some text value submit the page and

  • Can't find my photos in iphoto

    Hi.. I imported image files from usb to iphoto, but today when I opened iphoto again I can't see any of my files. My iphoto library is showing me around 40mb of space whereas the photos i imported were around 8 gb. Please help as i dont have any back

  • Battery percentage indicator doesn't turn off

    Hello i have an iphone 4s with the latest upgrade (7.1.2) and i discovered that it simply doesn't turn off the battery indicator level, even disabling it at general settings at all. I have recently received an new iphone from apple care and when i ge

  • Time Machine Will Not Work - Onyx Broke it and I Can't Fix It!

    Background The external drive is a western digital my book 500 GB drive(black with round button on front) connected with fire wire, with three partitions, 200/200/what ever is left. One has super duper bootable clone/time machine/extra store space. I

  • OLAP universe formulaes

    Hi, I am trying to develop formulaes on my OLAP universe from sap bex query , i did search and found few links, just wondering if any one have updated material on this , how to use MDX to write the req logic, also what kind of dimensons and measures