Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Auto Closed
-
None
-
None
-
None
Description
See FINERACT-932 for general background; I've found this in logs of https://www.fineract.dev:
java.lang.NullPointerException: null
at org.apache.fineract.commands.service.SynchronousCommandProcessingService.processAndLogCommand (SynchronousCommandProcessingService.java:94)
at org.apache.fineract.commands.service.SynchronousCommandProcessingService$$FastClassBySpringCGLIB$$ec92d53f.invoke (<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke (MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint (CglibAopProxy.java:771)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:163)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed (CglibAopProxy.java:749)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction (TransactionAspectSupport.java:367)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke (TransactionInterceptor.java:118)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed (CglibAopProxy.java:749)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept (CglibAopProxy.java:691)
at org.apache.fineract.commands.service.SynchronousCommandProcessingService$$EnhancerBySpringCGLIB$$d3ccdf7c.processAndLogCommand (<generated>)
at org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformServiceImpl.logCommandSource (PortfolioCommandSourceWritePlatformServiceImpl.java:99)
at org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformServiceImpl$$FastClassBySpringCGLIB$$31c15082.invoke (<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke (MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept (CglibAopProxy.java:687)
at org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformServiceImpl$$EnhancerBySpringCGLIB$$2c71f325.logCommandSource (<generated>)
at org.apache.fineract.portfolio.savings.api.SavingsAccountsApiResource.submitGSIMApplication (SavingsAccountsApiResource.java:190)
https://github.com/apache/fineract/blob/develop/fineract-provider/src/main/java/org/apache/fineract/commands/service/SynchronousCommandProcessingService.java could certainly be written to be more null safe - if none of the conditions in the {{ findCommandHandler()}} method match, it probably better shouldn't just return null, but throw UnsupportedCommandException(wrapper.commandName())?
Attachments
Issue Links
- blocks
-
FINERACT-932 Parent Issue for Error Logs seeing during "normal" usage (e.g. on fineract.dev)
- Open