Я использую монго для сопоставления доменов.У меня есть домен в Grails следующим образом:
import org.truedash.annotations.EncodeClass
@EncodeClass
class UserValues implements Serializable {
User user
List<String> value
static constraints = {
}
boolean equals(o) {
if (this.is(o)) return true
if (getClass() != o.class) return false
UserValues that = (UserValues) o
if (user != that.user) return false
return true
}
int hashCode() {
return (user != null ? user.hashCode() : 0)
}
}
Когда я создаю новый объект как UserValues values = new UserValues(user: user, value: ["abc"])
.Это создает объект с полем значения как [["abc"]], но ожидается ["abc"].Я мог решить эту проблему, изменив поле значения как List<String>
.Я понятия не имею об этом странном поведении.Пожалуйста помоги.