Cześć,
Staram się zapisać rekord do bazy (Spring 4.3.0, Hibernate 5.2.0), ale przy wywołaniu metody saveAndFlush (JPA) do bazy nic nie zostaje zapisane. Ktoś może widzi przyczynę?

Debug log:

0121.921 [http-nio-8080-exec-4] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Returning cached instance of singleton bean 'transactionManager'
0121.923 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Creating new transaction with name [info.noteme.service.UserServiceImpl.save]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''
0121.924 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Opened new EntityManager [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=ExecutableList{size=0} updates=ExecutableList{size=0} deletions=ExecutableList{size=0} orphanRemovals=ExecutableList{size=0} collectionCreations=ExecutableList{size=0} collectionRemovals=ExecutableList{size=0} collectionUpdates=ExecutableList{size=0} collectionQueuedOps=ExecutableList{size=0} unresolvedInsertDependencies=null])] for JPA transaction
0121.944 [http-nio-8080-exec-4] DEBUG o.h.e.t.internal.TransactionImpl - begin
0121.945 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Not exposing JPA transaction [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=ExecutableList{size=0} updates=ExecutableList{size=0} deletions=ExecutableList{size=0} orphanRemovals=ExecutableList{size=0} collectionCreations=ExecutableList{size=0} collectionRemovals=ExecutableList{size=0} collectionUpdates=ExecutableList{size=0} collectionQueuedOps=ExecutableList{size=0} unresolvedInsertDependencies=null])] as JDBC transaction because JpaDialect [org.springframework.orm.jpa.DefaultJpaDialect@5757b82a] does not support JDBC Connection retrieval
0121.949 [http-nio-8080-exec-4] DEBUG o.s.d.r.c.s.TransactionalRepositoryProxyPostProcessor$CustomAnnotationTransactionAttributeSource - Adding transactional method 'save' with attribute: PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''
0121.950 [http-nio-8080-exec-4] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Returning cached instance of singleton bean 'transactionManager'
0121.950 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Found thread-bound EntityManager [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=ExecutableList{size=0} updates=ExecutableList{size=0} deletions=ExecutableList{size=0} orphanRemovals=ExecutableList{size=0} collectionCreations=ExecutableList{size=0} collectionRemovals=ExecutableList{size=0} collectionUpdates=ExecutableList{size=0} collectionQueuedOps=ExecutableList{size=0} unresolvedInsertDependencies=null])] for JPA transaction
0121.950 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Participating in existing transaction
0121.951 [http-nio-8080-exec-4] DEBUG o.s.o.jpa.EntityManagerFactoryUtils - Opening JPA EntityManager
0121.952 [http-nio-8080-exec-4] DEBUG o.s.o.jpa.EntityManagerFactoryUtils - Registering transaction synchronization for JPA EntityManager
0121.978 [http-nio-8080-exec-4] DEBUG o.s.o.jpa.EntityManagerFactoryUtils - Closing JPA EntityManager
0121.980 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Initiating transaction commit
0121.980 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Committing JPA transaction on EntityManager [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=ExecutableList{size=0} updates=ExecutableList{size=0} deletions=ExecutableList{size=0} orphanRemovals=ExecutableList{size=0} collectionCreations=ExecutableList{size=0} collectionRemovals=ExecutableList{size=0} collectionUpdates=ExecutableList{size=0} collectionQueuedOps=ExecutableList{size=0} unresolvedInsertDependencies=null])]
0121.980 [http-nio-8080-exec-4] DEBUG o.h.e.t.internal.TransactionImpl - committing
0121.981 [http-nio-8080-exec-4] DEBUG o.s.orm.jpa.JpaTransactionManager - Closing JPA EntityManager [SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=ExecutableList{size=0} updates=ExecutableList{size=0} deletions=ExecutableList{size=0} orphanRemovals=ExecutableList{size=0} collectionCreations=ExecutableList{size=0} collectionRemovals=ExecutableList{size=0} collectionUpdates=ExecutableList{size=0} collectionQueuedOps=ExecutableList{size=0} unresolvedInsertDependencies=null])] after transaction
0121.981 [http-nio-8080-exec-4] DEBUG o.s.o.jpa.EntityManagerFactoryUtils - Closing JPA EntityManager

Cofig:

@Configuration
@EnableJpaRepositories(basePackages="info.noteme")
@EnableTransactionManagement
public class JpaConfiguration {
	@Autowired
	DataSourceConfig dsConfig;
	
	@Bean
	public PlatformTransactionManager transactionManager(){
	    JpaTransactionManager jpaTransactionManager = new JpaTransactionManager();
		EntityManagerFactory emf = dsConfig.entityManagerFactory(dsConfig.dataSource(), dsConfig.jpaVendorAdapter()).getNativeEntityManagerFactory();
				
	    jpaTransactionManager.setDataSource(dsConfig.dataSource());
	    jpaTransactionManager.setEntityManagerFactory(emf);
	    return jpaTransactionManager;
	}
}
@Configuration
@ComponentScan({ "info.noteme" })
public class DataSourceConfig {
	static final Logger LOG = LoggerFactory.getLogger(DataSourceConfig.class);

	@Bean
	public BasicDataSource dataSource() {
		BasicDataSource dataSource = new BasicDataSource();
		dataSource.setDriverClassName("com.mysql.jdbc.Driver");
		dataSource.setUsername("noteme");
		dataSource.setPassword("noteme");
		dataSource.setUrl("jdbc:mysql://localhost:3306/notedb");
		dataSource.setValidationQuery("SELECT 1");
		return dataSource;
	}

	@Bean
	public LocalContainerEntityManagerFactoryBean entityManagerFactory(BasicDataSource dataSource,
			JpaVendorAdapter jpaVendorAdapter) {
		LocalContainerEntityManagerFactoryBean emfb = new LocalContainerEntityManagerFactoryBean();
		emfb.setDataSource(dataSource);
		emfb.setPersistenceUnitName("noteMeDb");
		emfb.setJpaVendorAdapter(jpaVendorAdapter);
		return emfb;
	}

	@Bean
	public JpaVendorAdapter jpaVendorAdapter() {
		HibernateJpaVendorAdapter adapter = new HibernateJpaVendorAdapter();

		adapter.setDatabase(Database.MYSQL);
		adapter.setShowSql(true);
		adapter.setGenerateDdl(false);
		adapter.setDatabasePlatform("org.hibernate.dialect.MySQL5Dialect");
		return adapter;
	}

	@Bean
	public LocalSessionFactoryBean sessionFactory(DataSource dataSource) {
		LocalSessionFactoryBean sfb = new LocalSessionFactoryBean();
		sfb.setDataSource(dataSource);
		sfb.setPackagesToScan(new String[] { "info.noteme" });
		Properties props = new Properties();
		props.setProperty("dialect", "org.hibernate.dialect.MySQL5Dialect");
		sfb.setHibernateProperties(props);
		return sfb;
	}...

Serwis:

@Service
@Transactional(propagation = Propagation.REQUIRED)
public class UserServiceImpl implements UserService {
	@Autowired
	UserDao userDao;
	
	@Override
	public List<User> findAll() {
		return userDao.findAll();
	}


	@Override
	public User getUserByUsername(String username) {
		return userDao.getUserByUsername(username);
	}


	@Override
	public User save(User user) {
		return userDao.save(user);
	}


	@Override
	public User saveAndFlush(User user) {
		return userDao.saveAndFlush(user);
	}
	

}