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!

"java.lang.String cannot be cast to java.math.BigDecimal" error

myinceptionApr 30 2013 — edited Apr 30 2013
I am trying to pass a parameter orderNumber (#{requestScope.orderNumber}). Class of the parameter is defined as 'java.math.BigDecimal'.

This is the method where I am trying to fetch the value in a variable:
public void checkFlow() {
        // Add event code here...
        BigDecimal orderNumber =
            (BigDecimal)getPageFlowScope().get("orderNumber");
        System.out.println("orderNumber: " + orderNumber);
        if (!orderNumber.equals(null)) {
            DCBindingContainer bc =
                (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
            DCIteratorBinding iter =
                bc.findIteratorBinding("JdsuOntQeOrderSummaryVOIterator");
            ViewObject vo = iter.getViewObject();
            vo.setWhereClause("ORDER_NUMBER = " + orderNumber);
            vo.executeQuery();
        }
    }
But when I run the program, I am getting this error: "java.lang.String cannot be cast to java.math.BigDecimal". And this is due to

BigDecimal orderNumber = (BigDecimal)getPageFlowScope().get("orderNumber");

Where am I wrong? orderNumber if of type BigDecimal type only. Also I havent used type String anywhere.

JDev 11.1.1.6
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on May 28 2013
Added on Apr 30 2013
4 comments
5,331 views