You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ibatis.apache.org by "Clinton Begin (JIRA)" <ib...@incubator.apache.org> on 2008/03/22 04:05:25 UTC

[jira] Closed: (IBATIS-413) Problem for error parsing XML(SQL Maps)

     [ https://issues.apache.org/jira/browse/IBATIS-413?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Clinton Begin closed IBATIS-413.
--------------------------------

    Resolution: Invalid

Works as expected for the JavaBeans property standard

> Problem for error parsing XML(SQL Maps)
> ---------------------------------------
>
>                 Key: IBATIS-413
>                 URL: https://issues.apache.org/jira/browse/IBATIS-413
>             Project: iBatis for Java
>          Issue Type: Bug
>          Components: SQL Maps
>    Affects Versions: 2.2.0, 2.3.0
>         Environment: windows xp sp2, tomcat 5.0.28,springframework 2.0.3
>            Reporter: val lee
>
> if my domain bean have propertis for single letter start  .etc xYYYY, tomcat will error.
> Domain Bean:
> public class bean extends BaseModel {
> 	private static final long serialVersionUID = -8485826237084876775L;
> 	private long nSaleMoney ;
>     public long getNSaleMoney() {
> 		return saleMoney;
> 	}
> 	public void setNSaleMoney(long nSaleMoney) {
> 		this.nSaleMoney = nSaleMoney ;
> 	}
> }
> sql map:
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
> <sqlMap namespace="sscIssue">
> 	<typeAlias type="com.domain.SscIssue" alias="sscIssue" />
> 	<resultMap class="sscIssue" id="sscIssueResult">
> 		<result property="nSaleMoney" column="nSaleMoney" />
> 	</resultMap>
> 	
> 	<insert id="insertSscIssue">
> 		INSERT INTO 
> 			tabtab (nSaleMoney)
> 		values 
> 			(#nSaleMoney#)
> 	</insert>
> </sqlMap>
> error info:
> 2007-04-02 21:13:38,500 ERROR [org.springframework.web.context.ContextLoader] - Context initialization failed
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlMapClient' defined in ServletContext resource [/WEB-INF/dataAccessContext-local.xml]: Initialization of bean failed; nested exception is java.lang.RuntimeException: Error occurred.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> java.lang.RuntimeException: Error occurred.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:84)
> 	at com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:62)
> 	at org.springframework.orm.ibatis.SqlMapClientFactoryBean.afterPropertiesSet(SqlMapClientFactoryBean.java:258)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1059)
> 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:363)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
> 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
> 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:269)
> 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:320)
> 	at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:134)
> 	at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
> 	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
> 	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
> 	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827)
> 	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4343)
> 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
> 	at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
> 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
> 	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
> 	at org.apache.catalina.core.StandardService.start(StandardService.java:480)
> 	at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
> 	at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
> 	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
> Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:52)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:81)
> 	... 27 more
> Caused by: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:113)
> 	at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:74)
> 	at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:92)
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:62)
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)
> 	... 28 more
> Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:52)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser.parse(SqlMapParser.java:50)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$11.process(SqlMapConfigParser.java:364)
> 	at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:111)
> 	... 32 more
> Caused by: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:113)
> 	at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:74)
> 	at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:92)
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:62)
> 	at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)
> 	... 35 more
> Caused by: com.ibatis.common.beans.ProbeException: There is no READABLE property named 'nSaleMoney' in class 'com.domain.SscIssue'
> 	at com.ibatis.common.beans.ClassInfo.getGetterType(ClassInfo.java:240)
> 	at com.ibatis.common.beans.GenericProbe.getClassPropertyTypeForGetter(GenericProbe.java:224)
> 	at com.ibatis.common.beans.GenericProbe.getPropertyTypeForGetter(GenericProbe.java:153)
> 	at com.ibatis.sqlmap.engine.mapping.parameter.InlineParameterMapParser.resolveTypeHandler(InlineParameterMapParser.java:229)
> 	at com.ibatis.sqlmap.engine.mapping.parameter.InlineParameterMapParser.newParseMapping(InlineParameterMapParser.java:138)
> 	at com.ibatis.sqlmap.engine.mapping.parameter.InlineParameterMapParser.parseInlineParameterMap(InlineParameterMapParser.java:50)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.applyInlineParameterMap(SqlStatementParser.java:428)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.processSqlStatement(SqlStatementParser.java:216)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.parseGeneralStatement(SqlStatementParser.java:121)
> 	at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser$19.process(SqlMapParser.java:553)
> 	at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:111)
> 	... 39 more
> when i change nSaleMoney to saleMoney,  tomcat runs ok.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.