[
https://issues.apache.org/jira/browse/LANG-1542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Trần Ngọc Khoa updated LANG-1542:
---------------------------------
Description:
I'm trying to log an object to console with JSON style using
{{ToStringBuilder.reflectionToString}} from {{commons-lang3:3.10}} but it seems
generated a wrong JSON format.
Problem happening when I have a list of enums in my field list.
{code:java}
This is the class:
public class Person {
private long id;
private String name;
private List<MyEnum> listEnums;
//getter and setter
public String toString(){
return ToStringBuilder.reflectionToString(this, ToStringStyle.JSON_STYLE);
}
}
{code}
And {{MyEnum}}:
{code:java}
public enum MyEnum {
FOOD,
SPORT,
BOOK,
MUSIC
}{code}
When I call {{toString()}} of Person object. It shows like this
{code:java}
{
"id": 1,
"name": "Karl",
"listEnums": [FRIDAY, MONDAY, TUESDAY]
}{code}
What I expected is:
{code:java}
{
"id": 1,
"name": "Karl",
"listEnums": ["FRIDAY", "MONDAY", "TUESDAY"]
}{code}
was:
I'm trying to log an object to console with JSON style using
{{ToStringBuilder.reflectionToString}} from {{commons-lang3:3.10}} but it seems
generated a wrong JSON format.
Problem happening when I have a list of enums in my field list.
This is the class:
public class Person \{
private long id;
private String name;
private List<MyEnum> listEnums;
//getter and setter
public String toString() {
return ToStringBuilder.reflectionToString(this,
ToStringStyle.JSON_STYLE);
}
}
And {{MyEnum}}:
public enum MyEnum \{
FOOD,
SPORT,
BOOK,
MUSIC
}
{{}}
When I call {{toString()}} of Person object. It shows like this
\{
"id": 1,
"name": "Karl",
"listEnums": [FRIDAY, MONDAY, TUESDAY]
}
What I expected is:
\{
"id": 1,
"name": "Karl",
"listEnums": ["FRIDAY", "MONDAY", "TUESDAY"]
}
> ToStringBuilder.reflectionToString - Wrong JSON format when object has a List
> of Enum
> -------------------------------------------------------------------------------------
>
> Key: LANG-1542
> URL: https://issues.apache.org/jira/browse/LANG-1542
> Project: Commons Lang
> Issue Type: Bug
> Components: lang.*
> Affects Versions: 3.10
> Environment: Open JDK 1.8
> Reporter: Trần Ngọc Khoa
> Priority: Major
>
> I'm trying to log an object to console with JSON style using
> {{ToStringBuilder.reflectionToString}} from {{commons-lang3:3.10}} but it
> seems generated a wrong JSON format.
> Problem happening when I have a list of enums in my field list.
>
> {code:java}
> This is the class:
> public class Person {
> private long id;
> private String name;
> private List<MyEnum> listEnums;
> //getter and setter
> public String toString(){
> return ToStringBuilder.reflectionToString(this,
> ToStringStyle.JSON_STYLE);
> }
> }
> {code}
>
> And {{MyEnum}}:
> {code:java}
> public enum MyEnum {
> FOOD,
> SPORT,
> BOOK,
> MUSIC
> }{code}
> When I call {{toString()}} of Person object. It shows like this
> {code:java}
> {
> "id": 1,
> "name": "Karl",
> "listEnums": [FRIDAY, MONDAY, TUESDAY]
> }{code}
>
> What I expected is:
> {code:java}
> {
> "id": 1,
> "name": "Karl",
> "listEnums": ["FRIDAY", "MONDAY", "TUESDAY"]
> }{code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)