簡體   English   中英

Neo4J Java 無法加載關系:“沒有作者...”:Neo4J OGM 日志記錄錯誤?

[英]Neo4J Java can't load relations: "no writer for...": Neo4J OGM logging error?

Neo4J OGM v2.0.4 的代碼讀取(文件 org/neo4j/ogm/context/GraphEntityMapper.java,第 313--339 行):

    // If the source has a writer for an outgoing relationship for the rel entity, then write the rel entity on the source if it's a scalar writer
    ClassInfo sourceInfo = metadata.classInfo(source);
    RelationalWriter writer = entityAccessStrategy.getRelationalWriter(sourceInfo, edge.getType(), Relationship.OUTGOING, relationshipEntity);
    if (writer == null) {
        logger.debug("No writer for {}", target);
    } else {
        if (writer.forScalar()) {
            writer.write(source, relationshipEntity);
            mappingContext.registerRelationship(new MappedRelationship(edge.getStartNode(), edge.getType(), edge.getEndNode(), edge.getId(), source.getClass(), ClassUtils.getType(writer.typeParameterDescriptor())));
        } else {
            oneToMany.add(edge);
        }
    }

    //If the target has a writer for an incoming relationship for the rel entity, then write the rel entity on the target if it's a scalar writer
    ClassInfo targetInfo = metadata.classInfo(target);
    writer = entityAccessStrategy.getRelationalWriter(targetInfo, edge.getType(), Relationship.INCOMING, relationshipEntity);

    if (writer == null) {
        logger.debug("No writer for {}", target);
    } else {
        if (writer.forScalar()) {
            writer.write(target, relationshipEntity);
        } else {
            oneToMany.add(edge);
        }
    }

但是不應該讀取第一條日志消息

logger.debug("No writer for {}", target);

反而? 我收到一條令人困惑的日志消息,它說我的一個班級沒有作家,但該班級肯定有作家。 我問是因為我想確保我沒有忽略任何事情。

干杯和感謝,

斯蒂芬

當您的關系實體是集合時,您可能會看到此調試消息。 映射器首先嘗試為單個關系找到一個關系作者,然后返回到集合。 因此,除非您發現您的關系實體沒有被持久化,否則您可能無需擔心。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM