You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fineract.apache.org by "Adam Saghy (Jira)" <ji...@apache.org> on 2020/01/23 14:16:00 UTC
[jira] [Issue Comment Deleted] (FINERACT-839) NPE when creating a
Loan for a client
[ https://issues.apache.org/jira/browse/FINERACT-839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adam Saghy updated FINERACT-839:
--------------------------------
Comment: was deleted
(was: Raised PR: [https://github.com/apache/fineract/pull/696])
> NPE when creating a Loan for a client
> -------------------------------------
>
> Key: FINERACT-839
> URL: https://issues.apache.org/jira/browse/FINERACT-839
> Project: Apache Fineract
> Issue Type: Bug
> Components: Client
> Affects Versions: 1.4.0
> Reporter: Adam Saghy
> Priority: Blocker
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> Getting a NullPointerException during the creation of a Loan for a client.
> The problem seems to come when the *LoanProductData.isInterestRecalculationEnabled* is *false* and calling the *LoadProductData.isCompoundingToBePostedAsTransaction()* method where it would call the *interestRecalculationData* which is *null*.
> *It seems reasonable to be null as the interest recalculation is not enabled.*
> There was a commit:
>
> {code:java}
> commit af0dd7e5f3856eb0fc5b7441c8ec51941e1764d1 Author: Awasum Yannick Date: 10/12/2019, 17:37 use SpotBugs & fix over 300 high priority rule violations (FINERACT-702) This PR also serves as a base solution for upcoming FINERACT-712 and FINERACT-696. It includes using Objects.equals() to prevent NPEs, and adding gradle check to run SpotBugs on Travis CI. PS: SpotBugs is the successor to (and same code as) FindBugs.{code}
> which changed the business logic but my theory is that it might be a mistake.
>
> Before the commit:
>
> {code:java}
> if (isInterestRecalculationEnabled()) {
> return this.interestRecalculationData.isCompoundingToBePostedAsTransaction();
> }
> return null;
> {code}
>
> After the commit:
>
> {code:java}
> if (isInterestRecalculationEnabled()) {
> return this.interestRecalculationData.isCompoundingToBePostedAsTransaction();
> }
> return !this.interestRecalculationData.isCompoundingToBePostedAsTransaction();{code}
>
> The NPE is coming for the below line:
>
> {code:java}
> return !this.interestRecalculationData.isCompoundingToBePostedAsTransaction();{code}
>
>
> Could you please validate my theory?
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)