Cannot Expand Address List when Querying for Persons Through Query API
(Doc ID 2322286.1)
Last updated on APRIL 26, 2023
Applies to:
Oracle Health Insurance Enterprise Policy Administration - Version 2.17.2.0.0 and laterInformation 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": "19xx-xx-xx",
"dobInterpretation": "E",
"firstName": "xxxxxxx",
"functionDynamicLogicId": 221,
"gender": "F",
"lastUpdatedBy": 10,
"name": "xxxxxx",
"objectVersionNumber": 1,
"subtype": "PERS",
"uuid": "ac6dc3af-538d-4d52-b9c0-6bfb7f774c24",
"links": [
{
"href": "http://xxxxx: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://xxxxxx:7131/api/generic/dynamiclogic/221",
"rel": "canonical"
}
]
},
"language": {
"links": [
{
"href": "http://xxxxxx:7131/api/generic/languages/20",
"rel": "canonical"
}
]
},
"languagePreferred": {
"links": [
{
"href": "http://xxxxxx:7131/api/generic/languages/20",
"rel": "canonical"
}
]
},
"addressList": [
{
"id": 16026,
"city": "MASERU",
"createdBy": 10,
"houseNumber": xx,
"lastUpdatedBy": 10,
"numberAddition": "A",
"objectVersionNumber": 1,
"startDate": "2015-01-01",
"street": "xxxx STREET",
"type": "S",
"links": [
{
"href": "http://xxxxxx: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://xxxxxx:7131/api/generic/countries/1290",
"rel": "canonical"
}
]
},
"countryRegion": {
"links": [
{
"href": "http://xxxxxx: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
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |
References |