Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0053750Openbravo ERPA. Platformpublic2023-10-23 20:482023-10-27 11:42
cberner 
cberner 
normalmajorhave not tried
closedfixed 
5
 
PR23Q4 
Core
Production - QA Approved
2023-06-14
PR23Q3
https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/commit/3814f42dd715096570c6d519a63e77fb9ebb2738 [^]
No
0053750: NullPointerException thrown in EDL in unhandled exception cases
A NullPointerException is thrown when an exception is not properly handled by the EDL infrastructure.

This is due to a block where we have an CompletableFuture#exceptionally call, it should properly return an error object instead of null: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/blob/master/src/org/openbravo/externaldata/integration/process/ProcessRequest.java#L607 [^]
## These steps are not complete, they require some addition, to be done
1. Setup an EDL Process to be launched, like for example Push API
2. Add an exception at the end of nonBlockingEDLCompleted function:
  2.1. To add just before this return line: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/blob/master/src/org/openbravo/externaldata/integration/process/ProcessRequest.java#L702 [^]
    if (1 == 1) {
      throw new OBException("ERROR");
    }
3. Execute what is required for the EDL to be launched.

Check that a NullPointerException is thrown just at this line: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/blob/master/src/org/openbravo/externaldata/integration/process/EDLImportEntryProcessor.java#L206 [^]
Return a proper JSONObject error instead of null in this exceptionally block: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/blob/master/src/org/openbravo/externaldata/integration/process/ProcessRequest.java#L607 [^]
No tags attached.
blocks defect 0053742 closed cberner NullPointerException thrown in EDL in unhandled exception cases 
Issue History
2023-10-24 16:41cbernerTypedefect => backport
2023-10-24 16:41cbernerTarget Version => PR23Q4
2023-10-24 17:26hgbotNote Added: 0156245
2023-10-24 23:46hgbotResolutionopen => fixed
2023-10-24 23:46hgbotStatusscheduled => closed
2023-10-24 23:46hgbotNote Added: 0156250
2023-10-24 23:46hgbotNote Added: 0156251
2023-10-27 11:42ivancaceresIssue Monitored: ivancaceres

Notes
(0156245)
hgbot   
2023-10-24 17:26   
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/merge_requests/32 [^]
(0156250)
hgbot   
2023-10-24 23:46   
Directly closing issue as related merge request is already approved.

Repository: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration [^]
Changeset: 8c2ce2a261604f3f3b9ab2a833e79e5141e7431d
Author: Cristian Berner <cristian.berner@openbravo.com>
Date: 24-10-2023 17:26:00
URL: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/commit/8c2ce2a261604f3f3b9ab2a833e79e5141e7431d [^]

Fixes ISSUE-53750: NullPointerException thrown in EDL on unhandled exception cases

A NullPointerException was thrown due to missing returning an error
object in the exceptionally block of a CompletableFuture.

---
M src/org/openbravo/externaldata/integration/process/ProcessRequest.java
---
(0156251)
hgbot   
2023-10-24 23:46   
Merge request merged: https://gitlab.com/openbravo/product/pmods/org.openbravo.externaldata.integration/-/merge_requests/32 [^]