1
我是MyBatis的新手。mybatis配置問題
我一直在嘗試在web服務中配置mybatis我正在寫,但沒有運氣。
我所做的已經是,
- UserInfoMapper接口
- UserInfoMapper.xml與映射器的命名空間與我UserInfoMapper接口和選擇
- 的MyBatis-config.xml中與typeAlias作爲結果使用在UserInfoMapper.xml中輸入
- datasourceContext.xml中的oracle數據源bean(我已連接)
- org.mybatis.spring.mapper.MapperScannerConfigurer bean with basePackag e指向我datasourceContext.xml中的UserInfoMapper接口
- sqlSessionFactory bean ie。 org.mybatis.spring.SqlSessionFactoryBean具有我的dataSource和configLocation屬性
- userInfoMapper bean即。 org.mybatis.spring.mapper.MapperFactoryBean在datasourceContext.xml中具有屬性mapperInterface(value =「is.simnn.act.web.ngs.persistence.UserInfoMapper」)和sqlSessionFactory屬性(ref =「sqlSessionFactory」)
- 然後我的applicationContext.xml我有以下,
<import resource="classpath:META-INF/wsContext.xml" />
<import resource="classpath:META-INF/db/datasourceContext.xml" />
在我的測試情況下,我不斷收到NullPointerException異常,當我打電話JAXWS:端點,它使我對我UserInfoMapper接口。
任何想法或提示什麼可能是我的配置錯?
感謝, Gunnlaugur
嗨,馬克,這裏是我的xml <映射器命名空間= 「is.simnn.act.web.ngs.mappers.UserInfoMapper」> \t <選擇的id = 「getUserInfoBySnb」 參數類型= 「字符串」 與resultType = 「用戶信息」 > \t \t SELECT \t \t \t port.snb, \t \t \t port.timestamp, \t \t \t port.user_type, \t \t \t port.real_exch, \t \t \t port.act_exch, \t \t \t port.dev_type, \t \t \t端口。RC \t \t FROM \t \t \t端口 \t \t WHERE \t \t \t port.snb =#{} SNB \t 這是我的接口公共接口UserInfoMapper { \t公衆的UserInfo getUserInfoBySnb(字符串SNB) ; \t public UserInfo getAllUserInfoBySnb(String snb); \t public UserInfo getUserInfoByImsi(String imsi); } – Gunnlaugur 2011-05-17 08:30:28
好吧,我設法擺脫了NullPointerException,但現在我得到了java.lang.IllegalArgumentException:Mapped Statements集合不包含is.simnn.act.web.ngs.mappers.UserInfoMapper.getUserInfoBySnb的值。我正在使用mybatis-spring-1.0.1-SNAPSHOT和mybatis-3.0.5-SNAPSHOT。 – Gunnlaugur 2011-05-17 08:38:58
XML中的resultType'userInfo'是一個typeAlias?如果不是,則需要用完整的包名稱命名結果類型類:com.your.package.UserInfo。您也可以嘗試將註釋'@Param(「snb」)'添加到您的UserInfoMapper接口,例如'public UserInfo getUserInfoBySnb(@Param(「snb」)String snb)' – Mark 2011-05-18 14:17:14