2011-04-11 24 views
0

我是新的H2数据库,我遇到了一个特定的问题,我运行一个名为格式的函数。H2数据库抛出空指针异常

public static String format(Double sumValue,Integer decimalValue){ 
if(sumValue==null) 
    return null; 
else{ 
     //format in particular order. 
     } 
} 

sumValue有空值的机会。

当我运行一个查询它抛出以下异常

SELECT format(commamount,2) as formatted FROM pshipcommdetail [90105-153] 
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:327) 
    at org.h2.message.DbException.get(DbException.java:156) 
    at org.h2.message.DbException.convertInvocation(DbException.java:295) 
    at org.h2.engine.FunctionAlias$JavaMethod.getValue(FunctionAlias.java:405) 
    at org.h2.expression.JavaFunction.getValue(JavaFunction.java:38) 
    at org.h2.expression.Alias.getValue(Alias.java:35) 
    at org.h2.command.dml.Select.queryFlat(Select.java:519) 
    at org.h2.command.dml.Select.queryWithoutCache(Select.java:614) 
    at org.h2.command.dml.Query.query(Query.java:269) 
    at org.h2.command.dml.Query.query(Query.java:239) 
    at org.h2.command.dml.Query.query(Query.java:37) 
    at org.h2.command.CommandContainer.query(CommandContainer.java:78) 
    at org.h2.command.Command.executeQuery(Command.java:181) 
    at org.h2.server.TcpServerThread.process(TcpServerThread.java:278) 
    at org.h2.server.TcpServerThread.run(TcpServerThread.java:137) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NullPointerException 
    at reports.functions.Format.format(Format.java:15) 
    at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.h2.engine.FunctionAlias$JavaMethod.getValue(FunctionAlias.java:393) 

我通过documentation去,并能计算出该aruguments应该是包装类的,因此我改变了一倍!

你们中的任何人都可以帮我弄清楚实际问题在哪里吗?

感谢你

与问候 Phani库马尔

回答