|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
NPE after updating to 2.3.1/2.3.2Hi,
I have a simple sqlmap: resultMap class="mypackage.Role" id="Role"> <result property="role" column="role"/> <result property="description" column="description"/> </resultMap> <resultMap id="User" class="mypackage.User"> <result property="username" column="name" jdbcType="VARCHAR" /> <result property="password" column="password" jdbcType="VARCHAR" /> <result property="email" column="email" jdbcType="VARCHAR" /> <result property="enabled" column="enabled" jdbcType="BIT" /> <result property="creationDate" column="creationDate" jdbcType="TIMESTAMP" /> <result property="roles" column="name" select="user.selectRolesByName" /> </resultMap> <select id="selectUserByName" resultMap="User"> SELECT name, password, email, enabled, creationDate FROM User WHERE name = #VALUE# </select> <select id="selectRolesByName" resultMap="Role"> SELECT auth.role, description FROM Authority auth INNER JOIN Role ON auth.role = Role.role WHERE auth.username = #VALUE# </select> With corresponding model objects User and Role. The roles property is of type java.util.List. After upgrading from 2.3.0 to 2.3.1 or 2.3.2 I got the following exception: org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; --- The error occurred in mypackage/UserSQLMap.xml. --- The error occurred while applying a result map. --- Check the user.User. --- Check the result mapping for the 'roles' property. --- Cause: java.lang.NullPointerException; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException: --- The error occurred in mypackage/UserSQLMap.xml. --- The error occurred while applying a result map. --- Check the user.User. --- Check the result mapping for the 'roles' property. --- Cause: java.lang.NullPointerException at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQ LStateSQLExceptionTranslator.java:121) at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translat e(SQLErrorCodeSQLExceptionTranslator.java:322) at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemp late.java:212) at org.springframework.orm.ibatis.SqlMapClientTemplate.queryForObject(SqlMapCli entTemplate.java:271) at de.mypackage.UserIBatisDAO.load(UserIBatisDAO.java:92) [.....] Caused by: com.ibatis.common.jdbc.exception.NestedSQLException: --- The error occurred in mypackage/UserSQLMap.xml. --- The error occurred while applying a result map. --- Check the user.User. --- Check the result mapping for the 'roles' property. --- Cause: java.lang.NullPointerException at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryWithC allback(MappedStatement.java:204) at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryForOb ject(MappedStatement.java:120) at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx ecutorDelegate.java:518) at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapEx ecutorDelegate.java:493) at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSession Impl.java:106) at org.springframework.orm.ibatis.SqlMapClientTemplate$1.doInSqlMapClient(SqlMa pClientTemplate.java:273) at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemp late.java:209) ... 27 more Caused by: java.lang.NullPointerException at java.lang.Class.isAssignableFrom(Native Method) at com.ibatis.sqlmap.engine.type.TypeHandlerFactory.getTypeHandler(TypeHandlerF actory.java:143) at com.ibatis.sqlmap.engine.type.TypeHandlerFactory.getTypeHandler(TypeHandlerF actory.java:123) at com.ibatis.sqlmap.engine.mapping.result.ResultMap.prepareBeanParameterObject (ResultMap.java:591) at com.ibatis.sqlmap.engine.mapping.result.ResultMap.getNestedSelectMappingValu e(ResultMap.java:475) at com.ibatis.sqlmap.engine.mapping.result.ResultMap.getResults(ResultMap.java: 341) at com.ibatis.sqlmap.engine.execution.SqlExecutor.handleResults(SqlExecutor.jav a:384) at com.ibatis.sqlmap.engine.execution.SqlExecutor.handleMultipleResults(SqlExec utor.java:300) at com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java :189) at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.sqlExecuteQuery(M appedStatement.java:221) at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryWithC allback(MappedStatement.java:189) ... 33 more The following snippet has been added to TypeHandlerFactory.getTypeHandler() method if (handler == null && Enum.class.isAssignableFrom(type)) { //Line 143 handler = new EnumTypeHandler(type); } It seems that type is null. Do I have to change anything in my sqlmap? Or what am I doing wrong? Regards, Kai |
|
|
Re: NPE after updating to 2.3.1/2.3.2Just now I have seen that there is already an open issue:
https://issues.apache.org/jira/browse/IBATIS-522 2008/7/7 Kai Mütz <kmuetz@...>: Hi, |
|
|
Re: NPE after updating to 2.3.1/2.3.2See link below.
On Jul 7, 2008, at 11:53 AM, Kai Mütz wrote: Caused by: java.lang.NullPointerException Tom |
| Free Forum Powered by Nabble | Forum Help |