Cannot Expand Address List when Querying for Persons Through Query API (Doc ID 2322286.1)

Last updated on NOVEMBER 02, 2017

Applies to:

Oracle Health Insurance Enterprise Policy Administration - Version 2.17.2.0.0 and later
Information in this document applies to any platform.

Symptoms

When using the query API of OHI Policies to retrieve person information, necessary items are the addresses. Using a simple GET query without expanding the addressList in the result retrieves all the persons queried for. However, when adding the expand=addressList in the ACCept header of the request results in an internal server error and nothing is returned.
When examining the application log a reference is found to a separate trace file. This query does work in OHI Claims and OHI Authorizations. When using the directive "expand=personTitleList" the system behaves as expected, i.e. the person titles are included in the response with all their properties.

The work around is to do a separate query for the addresses. This complicates the source code and impacts the performance, because at least 2 queries are now needed with associated network time.

This is a sample of an expected result. Note that the address is expanded with all the fields that have a value.

{
    "offset": 0,
    "count": 1,
    "hasMore": false,
    "limit": 50,
    "items": [
        {
            "id": 9349,
            "code": "1501679402917-01",
            "createdBy": 10,
            "dateOfBirth": "1983-05-14",
            "dobInterpretation": "E",
            "firstName": "Judith",
            "functionDynamicLogicId": 221,
            "gender": "F",
            "lastUpdatedBy": 10,
            "name": "Kniest",
            "objectVersionNumber": 1,
            "subtype": "PERS",
            "uuid": "ac6dc3af-538d-4d52-b9c0-6bfb7f774c24",
            "links": [
                {
                    "href": "http://wlsohiuatlz1:7131/api/generic/persons/9349",
                    "rel": "self"
                }
            ],
            "creationDate": {
                "value": "2017-08-02T15:14:49.926+02:00"
            },
            "lastUpdatedDate": {
                "value": "2017-08-02T15:14:49.926+02:00"
            },
            "functionDynamicLogic": {
                "links": [
                    {
                        "href": "http://wlsohiuatlz1:7131/api/generic/dynamiclogic/221",
                        "rel": "canonical"
                    }
                ]
            },
            "language": {
                "links": [
                    {
                        "href": "http://wlsohiuatlz1:7131/api/generic/languages/20",
                        "rel": "canonical"
                    }
                ]
            },
            "languagePreferred": {
                "links": [
                    {
                        "href": "http://wlsohiuatlz1:7131/api/generic/languages/20",
                        "rel": "canonical"
                    }
                ]
            },
            "addressList": [
                {
                    "id": 16026,
                    "city": "MASERU",
                    "createdBy": 10,
                    "houseNumber": 12,
                    "lastUpdatedBy": 10,
                    "numberAddition": "A",
                    "objectVersionNumber": 1,
                    "startDate": "2015-01-01",
                    "street": "MAIN STREET",
                    "type": "S",
                    "links": [
                        {
                            "href": "http://wlsohiuatlz1:7131/api/generic/addresses/16026",
                            "rel": "canonical"
                        }
                    ],
                    "creationDate": {
                        "value": "2017-08-30T11:14:46.789+02:00"
                    },
                    "lastUpdatedDate": {
                        "value": "2017-08-30T11:14:46.789+02:00"
                    },
                    "country": {
                        "links": [
                            {
                                "href": "http://wlsohiuatlz1:7131/api/generic/countries/1290",
                                "rel": "canonical"
                            }
                        ]
                    },
                    "countryRegion": {
                        "links": [
                            {
                                "href": "http://wlsohiuatlz1:7131/api/generic/countryregions/4311",
                                "rel": "canonical"
                            }
                        ]
                    }
                }
            ]
        }
}



ERROR
-----------------------
 "request failed".
500 Internal Server Error

The issue can be reproduced at will with the following steps:
1. Create a person in OHI Policies with an address. Assume that the person has code 'MM1'
2. Using Postman send a request with the following characteristics:
 a) method = GET
 b) url: http://:/api/generic/persons?q=code.eq(MM1)
 c) set the Accept-header to: application/json; expand=addressList



The issue has the following business impact:
 This particular query is used in custom build screens, which will now respond slower because of the workaround
- More complicated source code of the custom screens, with associated maintenance.

Changes

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms