Skip to Main Content

Java Development Tools

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

javax.faces.convert.ConverterException: The value is not a number

User794216-OracleJun 1 2012 — edited Jun 5 2012
Hi,

have an af:table with the filtering enabled

If I (by accident) enter an alpha numeric value as a filter criteria for a NUMBER column then ADF throws a number ConverterException

javax.faces.convert.ConverterException: The value is not a number

I would have expected ADF would handle this a bit more gracefully iso throwing an exception ? For example to not return any rows or provide a message to the user saying this input isn't valid

Is this a known bug ?

My jdev version is 11.1.1.4

Thanks,

Ingrid

Comments

Hi,

Welcome to OTN. The behavior you are noticing is expected. If you would like to display a custom exception/convertor, check out this doc.

http://docs.oracle.com/cd/E25178_01/web.1111/b31973/af_validate.htm#BABGIEDH

-Arun
SantoshVaza
Hi,
have an af:table with the filtering enabled
on corrosponding field add af:convertNumber tag like
<af:inputText>
            <af:convertNumber/>
</af:inputText>
So instead of throwing exception it will prompt the user to add a numeric value..

Regards,
User794216-Oracle
Thanks for the replies.
I was aware of those "fixes" except that

- users need to be able to use < or > in the filter criteria, so restricting them to numbers is not a solution
- the custom implemenation is a lot of work for something I would expected ADF to deal with.

I don't get the number exception when I enter "> 100" or "< 100" so the < and > seem to pass succesfully.
But if by accident I enter "= 100" instead of "100" it throws the number exception
So I still feel this should be handled more gracefully out of the box.

Thanks, Ingrid
Here is a simple workaround that I make use of, might help!

Consider I have a bind variable searchString of String type being used in a view criteria. View criteria has a numeral attribute as well as text attribute to compare with :searchString. Now what I do to avoid the exception is that I create another bind variable called searchStringForInt of String type. I set the value of this bind variable as expression type "+searchString != null ? searchString.replaceAll("\\D+","") : null+" and use this :searchStringForInt for comparing with numeral attribute instead of :searchString.
Also FYI, QBE behaviour can be customized. Take a look at http://radio-weblogs.com/0118231/stories/2003/07/11/implementingAViewCriteriaAdapterToCustomizeQueryByExampleFunctionality.html.
1 - 5
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Jul 3 2012
Added on Jun 1 2012
5 comments
598 views