मैं जिस नमूना परियोजना के साथ काम कर रहा हूं उसे यहां संलग्न पाया जा सकता है - स्प्रिंग जीरा

यह मेरा विन्यास है

@EnableNeo4jRepositories(basePackages = "com.graph.repository")
public class DBConfig extends Neo4jConfiguration{
    @Value("${neo4j.location}")
    private String neo4jDatabaseLocation;

    @Override
    public SessionFactory getSessionFactory() {
        return new SessionFactory(getConfiguration(), "com.graph.entity");
    }

    @Bean
    public Configuration getConfiguration() {
        Configuration configuration = new Configuration();
        configuration.driverConfiguration()
            .setDriverClassName("org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver")
            .setURI(neo4jDatabaseLocation);
        return configuration;
    }

    @Bean
    @Override
    public Session getSession() throws Exception {
        return getSessionFactory().openSession();
    }
}

सार इकाई

public abstract class Entity {
@GraphId
private Long id;

public Long getId() {
    return id;
}

@Override
public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || id == null || getClass() != o.getClass()) return false;

    Entity entity = (Entity) o;

    if (!id.equals(entity.id)) return false;

    return true;
}

@Override
public int hashCode() {
    return (id == null) ? -1 : id.hashCode();
}
}

यह मेरी इकाई है

@NodeEntity(label = "Patient")
public class Patient extends Entity {
private String patientId;
private String patientName;
private String otherPatientId;
private String sex;
private String dateOfBirth;
private String patientIdIssuer;
@Relationship(type = "STUDY", direction = Relationship.UNDIRECTED)
private Set<Study> studies;

Getters and Setters...
}

स्टडी में नेस्टेड एंटिटी/रिलेशनशिप है और इसमें एक और नेस्टेड एंटिटी/रिलेशनशिप है। 1:N संबंध

यह मेरा भंडार है

@Repository
public interface PatientRepository extends GraphRepository<Patient> {
}

और यह कॉलिंग विधि है

public class Test() {
    @Autowired
    private PatientRepository patientRepository;

    public void test() {
        Patient patient = new Patient();
        // set fields
        patientRepository.save(patient); -> This is where I get NPE
    }
}

स्टैक ट्रेस :

Caused by: java.lang.NullPointerException: null
at org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver.nativeTransaction(EmbeddedDriver.java:180) ~[neo4j-ogm-embedded-driver-2.0.4.jar:na]
at org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver.newTransaction(EmbeddedDriver.java:148) ~[neo4j-ogm-embedded-driver-2.0.4.jar:na]
at org.neo4j.ogm.session.transaction.DefaultTransactionManager.openTransaction(DefaultTransactionManager.java:57) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.delegates.TransactionsDelegate.beginTransaction(TransactionsDelegate.java:37) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.Neo4jSession.beginTransaction(Neo4jSession.java:441) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.request.RequestExecutor.executeSave(RequestExecutor.java:84) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.delegates.SaveDelegate.save(SaveDelegate.java:75) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.delegates.SaveDelegate.save(SaveDelegate.java:44) ~[neo4j-ogm-core-2.0.4.jar:na]
at org.neo4j.ogm.session.Neo4jSession.save(Neo4jSession.java:425) ~[neo4j-ogm-core-2.0.4.jar:na]

क्या कोई कृपया मुझे बता सकता है कि मैं क्या गलत कर रहा हूँ ??

नोट: मैंने इसे पहले sdn.3.x के साथ GraphDatabaseService के साथ काम किया था

2
Razor 11 अगस्त 2016, 01:25
क्या आप सुनिश्चित हैं कि ग्राफ़ डेटाबेस स्थान पढ़ा गया है? क्या आप सत्यापित कर सकते हैं कि ग्राफ़डेटाबेस सेवा को getSessionFactory() में स्थापित किया गया है, यह जाँच कर कि क्या एंबेडेडड्राइवर के साथ अशक्त है एम्बेडेडड्राइवर = (एम्बेडेडड्राइवर) Components.driver (); ग्राफ़डेटाबेस सेवा डेटाबेस सेवा = एम्बेडेडड्राइवर.गेटग्राफडेटाबेस सेवा ();
 – 
Luanne
11 अगस्त 2016, 03:59
एम्बेडेडड्राइवर और डेटाबेस सेवा दोनों शून्य नहीं हैं। .save() कॉल करने से ठीक पहले जाँच की गई
 – 
Razor
11 अगस्त 2016, 07:01
क्या आप अपनी इकाई कक्षा साझा कर सकते हैं?
 – 
Luanne
11 अगस्त 2016, 07:49
प्रश्न में अपडेट किया गया
 – 
Razor
11 अगस्त 2016, 07:58
एसडीएन का कौन सा संस्करण?
 – 
Luanne
11 अगस्त 2016, 08:11

1 उत्तर

सबसे बढ़िया उत्तर

ऐसा लगता है कि आपकी Neo4jConfiguration कक्षा पर केवल @Configuration एनोटेशन गायब है:

@org.springframework.context.annotation.Configuration
@EnableTransactionManagement
@EnableNeo4jRepositories(basePackages = "com.seyfert.matrix.graph.repository")
public class DBConfig extends Neo4jConfiguration{
...
2
Luanne 14 अगस्त 2016, 18:00