websocket経由でバックエンドに送信するJSONスキーマがあります。DataIntegrityViolationException:Spring mongodbでJSONスキーマを保存できません
{
"type": "object",
"properties": {
"user": {
"$ref": "#/definitions/user"
}
},
"required": [
"user"
]
}
このための私のBeanクラスは、今私はMongoDBの中でこれを保管したいが、私は、私は例外
org.springframework.dao.DataIntegrityViolationException: Write failed with error code 55 and error message 'The DBRef $ref field must be following by a $id field'; nested exception is com.mongodb.WriteConcernException: Write failed with error code 55 and error message 'The DBRef $ref field must be following by a $id field'
at org.springframework.data.mongodb.core.MongoExceptionTranslator.translateExceptionIfPossible(MongoExceptionTranslator.java:85) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
at org.springframework.data.mongodb.core.MongoTemplate.potentiallyConvertRuntimeException(MongoTemplate.java:2135) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:481) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
at org.springframework.data.mongodb.core.MongoTemplate.saveDBObject(MongoTemplate.java:1101) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
at org.springframework.data.mongodb.core.MongoTemplate.doSave(MongoTemplate.java:1034) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
at org.springframework.data.mongodb.core.MongoTemplate.save(MongoTemplate.java:981) ~[spring-data-mongodb-1.10.1.RELEASE.jar:na]
の下に取得することを実行しようとするとき私は
class Schema{
private String type;
private String[] required;
Private Map<String, Object> properties;
//getter and setter
}
として定義されます$ refはmongodbで使用される有効なキー名ではありませんが、Open API仕様に基づいたJSONスキーマの有効なキーであることを推測しています。 これには解決策はありますか?