If IBatis is throwing following exception then apart from usual suspects of correct dtd declaration in sql-map-config xml and sql-map xml files, one should also look at the insert sql definition in sql-map xml.
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: java.util.NoSuchElementExceptionI had something like this in my insert query xml definition:
INSERT INTO TEST_T (ACCT_ID) VALUES (#acctId)
above mentioned sql statement throws com.ibatis.common.xml.NodeletException which is difficult to figure out.
In my case, error is due to not having closing hash (#) with acctId
If i change the insert statement to following then things work again, notice the closing # in #acctId#
INSERT INTO TEST_T (ACCT_ID) VALUES (#acctId#)
Hope that this is of some use to others who get this error.