Я пытаюсь просто сохранить сущность в solr, используя данные пружины, и получить ее автоматически сгенерированный идентификатор.Я вижу, что идентификатор создан, но он не был возвращен мне.Код тривиален
сущность:
@SolrDocument(solrCoreName = "bank")
@Canonical
class Shop {
@Id
@Field
String id
@Field
String name
}
хранилище:
@Repository
interface ShopRepository extends SolrCrudRepository<Shop, String>{
}
обработчик:
@Autowired
ShopRepository repository
void save() {
Shop shop = new Shop()
shop.name = 'shop1'
log.info("before {}", shop)
Shop savedShop = repository.save(shop)
log.info("after {}", savedShop)
}
зависимости:
dependencies {
compile lib.groovy_all
compile 'org.springframework.boot:spring-boot-starter-data-solr:1.5.10.RELEASE'
}
и результат:
before com.entity.Shop(null, shop1)
after com.entity.Shop(null, shop1)
однако через консоль администратора solr я вижу сгенерированный идентификатор:
{ "responseHeader":{
"status":0,
"QTime":0,
"params":{
"q":"*:*",
"_":"1527472154657"}}, "response":{"numFound":3,"start":0,"docs":[
{
"name":["shop1"],
"id":"4db1eb1d-718b-4a38-b960-6d52f9b6240c",
"_version_":1601670593291223040,
"name_str":["shop1"]},
{
"name":["shop1"],
"id":"6ad52214-0f23-498d-82b8-82f360ef22f1",
"_version_":1601670855078707200,
"name_str":["shop1"]},
{
"name":["shop1"],
"id":"b45b5773-f2b9-4474-b177-92c98810978b",
"_version_":1601670887722975232,
"name_str":["shop1"]}] }}
, а repository.findAll () также возвращает правильный результат с сопоставленным идентификатором.Это функция или ошибка?