Thanks, Hmm...missing some letters there I see... Got a step further....the 3 version differs a bit from the 2 version I realize. Since the version 3 lacks some documentation i learn quite a bit from the error messages :-)
-Jon -----Original Message----- From: Eduardo M. Cavalcanti [mailto:ecavalca...@eversystems.com.br] Sent: 17. mars 2010 14:59 To: user-java@ibatis.apache.org Subject: Re: ibatis 3 basis Jon, Verify if Account.xml is in correct format. It should contain <!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd"> instead of <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> to begin with. Regards. On 17/03/2010 10:39, Jon Finanger wrote: > I'm evaluating the technology and have a "tricky" startup problem I'm not > able to "see" the solution for. > I get the: > Exception in thread "main" org.apache.ibatis.exceptions.IbatisException: > ### Error building SqlSession. > ### The error may exist in test/ibatis/Account.xml > ### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL > Mapper Configuration. > Cause: java.lang.RuntimeException: Error parsing Mapper XML. Cause: > java.lang.NullPointerException > at > org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory > .java:8) > at > org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBu > ilder.java:32) > at > org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBu > ilder.java:15) > > > Well, > To start with I use the account table and account.java from the JPetshop > example as the base (with small mods). > Does it exists examplecode for ibatis 3? > My testclass is like this: > > public class Test { > public static void main(String[] args) { > String resource = " test/ibatis/SqlMapperConfig.xml"; > Reader reader = null; > try { > reader = Resources.getResourceAsReader(resource); > } catch (IOException e) {} > SqlSessionFactoryBuilder builder = new > SqlSessionFactoryBuilder(); > SqlSessionFactory factory = builder.build(reader); > SqlSession session = factory.openSession(); > try { > Account account = new Account(); > account.setAddress1("test address"); > account.setCity("Trondheim"); > account.setEmail("t...@test.no"); > account.setFirstName("Jon"); > account.setLastName("XYZ"); > session.insert("insertAccount", account); > session.commit(); > > } finally { > session.close(); > } > > } > } > > > Then I set up the sqlmapperconfig.xml file like this: > <?xml version="1.0" encoding="UTF-8" ?> > <!DOCTYPE configuration PUBLIC > "-//ibatis.apache.org//DTD Config 3.0//EN" > "http://ibatis.apache.org/dtd/ibatis-3-config.dtd"> > <configuration> > <environments default="development"> > <environment id="development"> > .... > </environment> > </environments> > <mappers> > <mapper resource=" test/ibatis/Account.xml"/> > </mappers> > </configuration> > > The account.xml is like this (2.0 way): > > <?xml version="1.0" encoding="UTF-8" ?> > > <!DOCTYPE sqlMap > PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" > "http://ibatis.apache.org/dtd/sql-map-2.dtd"> > > <sqlMap namespace="Account"> > > <typeAlias type="tagsmart.test.ibatis.Account" alias="account" /> > > <select id="getAccountByUsername" resultClass="account" > parameterClass="string"> > SELECT > ACCOUNT.EMAIL, > ACCOUNT.FIRSTNAME, > ACCOUNT.LASTNAME, > ACCOUNT.STATUS, > ACCOUNT.ADDR1 AS address1, > ACCOUNT.ADDR2 AS address2, > ACCOUNT.CITY, > ACCOUNT.STATE, > ACCOUNT.ZIP, > ACCOUNT.COUNTRY, > ACCOUNT.PHONE, > FROM ACCOUNT > WHERE ACCOUNT.USERID = #username# > </select> > ......... > ....... > > </sqlMap> > > I've tried to use the 3.0 descriptor, but it complains about sqlMap > declaration > > Any ideas? > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-java-unsubscr...@ibatis.apache.org > For additional commands, e-mail: user-java-h...@ibatis.apache.org > > > --------------------------------------------------------------------- To unsubscribe, e-mail: user-java-unsubscr...@ibatis.apache.org For additional commands, e-mail: user-java-h...@ibatis.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: user-java-unsubscr...@ibatis.apache.org For additional commands, e-mail: user-java-h...@ibatis.apache.org