Frage

Beschloß einen meines Projekt von iBatis zu Mybatis und läuft in ein Problem mit Einsatz zu bewegen.

Mapper xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"    
                 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="bap.persistance.interfaces.ArticleMapper">
 <insert id="insertTestA">
  insert into test_a ( cookie ) values( 'tomek pilot');
 </insert>
</mapper>

Mapper Java-Datei:

public interface ArticleMapper {
 void insertTestA();
}

Mapper Implementierung:

String resource = "bap/persistance/MyBatis_xml/MyBatisConfig.xml";

....

... 
public void createArticle( Article article ) throws IOException {
  Reader reader = Resources.getResourceAsReader(resource);
  SqlSessionFactory sqlSessionFactory = 
          new SqlSessionFactoryBuilder().build(reader);
  SqlSession session = sqlSessionFactory.openSession();

  try{
   ArticleMapper mapper = session.getMapper(ArticleMapper.class);
   mapper.insertTestA();
  } catch( Exception e ){
   e.printStackTrace();
  } finally{
   session.close();
  }
  return article.getId();
 }
...

... line omitted for brevity.

In der Tabelle im Einsatz:

    CREATE TABLE test_a
(
  cookie text
)
WITH (OIDS=FALSE);

Ich versuche, dies mit Mybatis 3.0.1 zu laufen, Frühling 3.0.3, postgresql 8.3 (mit postgresql-8.4-701.jdbc3.jar)

Ich glaube, dass alle Text Setup richtig eingestellt ist (ich kann ein gegen einen anderen Tisch fein wählen auszuführen.

Getestet habe ich die inser manuell und es funktioniert gut (insert into test_a ( cookie ) values( 'some stuff');)

Aus irgendeinem Grunde der Einsatz nicht ausgeführt und keine Stack-Trace zeigt nach oben: - (

wird Irgendwelche Hinweise geschätzt: -)

War es hilfreich?

Lösung

Sie nicht begangen Ihre Transaktion. Versuchen Sie, einen "session.commit ()".

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top