Version 7

    Work in progress. Creating quickstart.

     

     

    MySQL module, datasource and persistence.xml (for Hibernate) configuration bash script

     

     

    <!-- iBATIS -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.1.1</version>
    </dependency>
    

     

     

    <configuration>
        <settings>
            <setting name="lazyLoadingEnabled" value="false" />
        </settings>
    
        <environments default="development">
            <!-- See http://www.mybatis.org/core/configuration.html#environments -->
            <environment id="development">
                <transactionManager type="MANAGED"/>
                <dataSource type="JNDI">
                    <property name="data_source" value="java:jboss/datasources/PohlidameDS"/>
                </dataSource>
            </environment>
        </environments>
    
        <mappers>
            ...
        </mappers>
    
    </configuration>
    

     

     

    TODO:  Externalize config,  perhaps bring in CDI's @Produces?

     

    public class MyBatisSimplestSessionFactory {
    
        private static SqlSessionFactory sessFactory = null;
        private static Reader reader;
        private static String CONFIGURATION_FILE = "mybatis/mybatis-config.xml";
    
        static{
            try {
                reader = Resources.getResourceAsReader(CONFIGURATION_FILE);
                sessFactory = new SqlSessionFactoryBuilder().build(reader);
            } catch (IOException ex) {
                throw new RuntimeException("Error configuring MyBatis: " + ex.getMessage(), ex);
            }
        }
    
        public static SqlSession openSession(){
            return sessFactory.openSession();
        }
    
    }
    

     

     

    ### Error committing transaction.  Cause: java.sql.SQLException: You cannot commit during a managed transaction!

    ### Cause: java.sql.SQLException: You cannot commit during a managed transaction!