2017-09-12 1 views
0

Ich versuche Spring Batch in vorhandene Umgebung zu implementieren. meine Feder Batch funktioniert korrekt, aber es scheint nicht in Spring Batch-Tabellen einfügen (Batch_job_execution, ...)Spring Batch fügen Job-Instanzen nicht in Datenbank ein

Ich verstehe nicht, warum es nicht fehlgeschlagen ist, und die Statue des Stapels abgeschlossen ist ?

Und wie kann ich dieses Problem lösen und meinen Federbatch bezüglich bereits bestehender Konfiguration korrekt konfigurieren?

Ich habe eine transaction configure wie folgt: Gemeinsame Konfiguration des Projekts

@Bean 
public JpaTransactionManager myTxManager() { 
    return new JpaTransactionManager(myEmf().getObject()); 
} 

Meine aktuelle Frühjahr Batch-Konfiguration

@Bean 
@Override 
public JobRepository getJobRepository() throws Exception { 
    MapJobRepositoryFactoryBean factory = new MapJobRepositoryFactoryBean(getTransactionManager()); 
    factory.setIsolationLevelForCreate("ISOLATION_DEFAULT"); 
    factory.afterPropertiesSet(); 
    return factory.getObject(); 
} 

@Override 
public JobLauncher getJobLauncher() throws Exception { 
    SimpleJobLauncher jobLauncher = new SimpleJobLauncher(); 
    jobLauncher.setJobRepository(getJobRepository()); 
    jobLauncher.afterPropertiesSet(); 
    return jobLauncher; 
} 

@Override 
public JpaTransactionManager getTransactionManager() throws Exception { 
    return myTxManager; 
} 


@Override 
public JobExplorer getJobExplorer() throws Exception { 
    return this.jobExplorer; 
} 

Antwort

1

Die MapJobRepositoryFactoryBean schafft eine JobRepository, die von im Speicher gesichert wird Map Implementierungen ... nicht die Datenbank. Verwenden Sie stattdessen die JobRepositoryFactoryBean und Sie werden die Datensätze in der Datenbank sehen.

Verwandte Themen