bug fix
This commit is contained in:
parent
1ec67218a2
commit
908ada851f
|
@ -4,6 +4,10 @@
|
|||
All notable changes to this project will be documented in this file.
|
||||
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [v2.5.5-SNAPSHOT] - 2024-04-16
|
||||
|
||||
- Bug #27218 fixed null pointer exception of parsing user from json
|
||||
|
||||
## [v2.5.4] - 2022-07-06
|
||||
|
||||
- Feature #23622 added Catalogue-Manager and Moderator roles
|
||||
|
|
2
pom.xml
2
pom.xml
|
@ -10,7 +10,7 @@
|
|||
</parent>
|
||||
<groupId>org.gcube.dvos</groupId>
|
||||
<artifactId>usermanagement-core</artifactId>
|
||||
<version>2.5.4</version>
|
||||
<version>2.5.5-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>User Management API</name>
|
||||
|
|
|
@ -147,8 +147,12 @@ public class LiferayWSUserManager implements UserManager{
|
|||
private GCubeUser mapLRUser(String json){
|
||||
try{
|
||||
if (json != null) {
|
||||
logger.info("user json to be parsed: " , json);
|
||||
JSONParser parser = new JSONParser();
|
||||
JSONObject userJSON = (JSONObject)parser.parse(json);
|
||||
if(userJSON!=null){
|
||||
logger.info("parsed user json: " , userJSON.toString());
|
||||
}
|
||||
// TODO skip for now
|
||||
List<Email> emails = new ArrayList<Email>();
|
||||
// for (EmailAddress e : u.getEmailAddresses()) {
|
||||
|
@ -161,15 +165,17 @@ public class LiferayWSUserManager implements UserManager{
|
|||
} catch (Exception e1) {
|
||||
logger.warn("Failed to retrieve property " + USER_LOCATION_INDUSTRY_KEY, e1);
|
||||
}
|
||||
|
||||
if(userJSON!=null){
|
||||
logger.info("parsed user json: " , userJSON.toString());
|
||||
}
|
||||
// retrieve the contact id information (it is into the user json)
|
||||
long contactId = (long)userJSON.get("contactId");
|
||||
|
||||
// retrieve contact json obj from contactId
|
||||
String jsonContact = getContactJson(contactId);
|
||||
JSONObject contactJSON = (JSONObject)parser.parse(jsonContact);
|
||||
|
||||
return new GCubeUser(
|
||||
String jsonContact;
|
||||
JSONObject contactJSON;
|
||||
try{
|
||||
long contactId = (long)userJSON.get("contactId");
|
||||
jsonContact = getContactJson(contactId);
|
||||
contactJSON = (JSONObject)parser.parse(jsonContact);
|
||||
return new GCubeUser(
|
||||
(long)userJSON.get("userId"),
|
||||
(String)userJSON.get("screenName"),
|
||||
(String)userJSON.get("emailAddress"),
|
||||
|
@ -183,6 +189,23 @@ public class LiferayWSUserManager implements UserManager{
|
|||
(String)userJSON.get("jobTitle"),
|
||||
locationIndustry,
|
||||
emails);
|
||||
}catch (Exception e) {
|
||||
logger.warn("Failed to retrieve property " + "contactId", e);
|
||||
return new GCubeUser(
|
||||
(long)userJSON.get("userId"),
|
||||
(String)userJSON.get("screenName"),
|
||||
(String)userJSON.get("emailAddress"),
|
||||
(String)userJSON.get("firstName"),
|
||||
(String)userJSON.get("middleName"),
|
||||
(String)userJSON.get("lastName"),
|
||||
buildFullName(userJSON),
|
||||
(long)userJSON.get("createDate"),
|
||||
getUserAvatarAbsoluteURL((String)userJSON.get("uuid"), (long)userJSON.get("portraitId")), // skip for now TODO getUserAvatarAbsoluteURL(u)
|
||||
false,
|
||||
(String)userJSON.get("jobTitle"),
|
||||
locationIndustry,
|
||||
emails);
|
||||
}
|
||||
}
|
||||
}catch(Exception e){
|
||||
logger.error("Exception while mapping the json user object to the GCubeUser java object", e);
|
||||
|
|
Loading…
Reference in New Issue