You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-java@ibatis.apache.org by Cesar Villar <ce...@yahoo.es> on 2005/08/25 10:49:46 UTC
com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'
Hi evereybody!!
I have a dao layer defined in my sql-map-config with
several sqlMaps. Recently, when i try to access to
this layer i get this error:
- AbstractUnafeDAO static block:
com.ibatis.common.exception.NestedRuntimeException:
Error occurred. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
I've tried to delete all sqlMap references from the
sql-map-config and included one by one. I discovered
that only with a few got this error. So I clear the
content of these XML archives with only
<sqlMap></sqlMap>. But i'm having the same error.
¿What can I do? I have no idea to resolve it.
Thanks a lot
______________________________________________
Renovamos el Correo Yahoo!
Nuevos servicios, más seguridad
http://correo.yahoo.es
Re: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'
Posted by Cesar Villar <ce...@yahoo.es>.
When I write the content of the file that fails into
another file the problem disappears.
The stack exception is:
- AbstractUnafeDAO static block:
com.ibatis.common.exception.NestedRuntimeException:
Error occurred. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
java.lang.ExceptionInInitializerError
at
com.unafe.dao.DAOFactory.getCursoDAO(DAOFactory.java:74)
at
com.unafe.dao.pruebas.PruebaCursos.obtenerCursos(PruebaCursos.java:47)
at
com.unafe.dao.pruebas.PruebaCursos.main(PruebaCursos.java:39)
Caused by: java.lang.RuntimeException: Error
Initializing AbstractUnafeDAO
:com.ibatis.common.exception.NestedRuntimeException:
Error occurred. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by:
com.ibatis.common.exception.NestedRuntimeException:
Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
com.ibatis.common.xml.NodeletException: Error parsing
XML. Cause: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
Caused by: com.ibatis.common.xml.NodeletException:
Error parsing XML. Cause:
org.xml.sax.SAXParseException: Falta elemento de raíz
de documento.
Caused by: org.xml.sax.SAXParseException: Falta
elemento de raíz de documento.
at
com.unafe.dao.AbstractUnafeDAO.<clinit>(AbstractUnafeDAO.java:43)
... 3 more
Exception in thread "main"
And the content of the file is:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map
2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CursoSQL">
<!--
==============================================================
======================== CACHES
==============================
==============================================================
-->
<cacheModel id="curso_cache" type="MEMORY" >
<flushInterval hours="24"/>
<flushOnExecute statement= "insertCurso" />
<flushOnExecute statement= "updateCurso" />
<flushOnExecute statement= "deleteCurso" />
<property name="reference-type" value="WEAK"
/>
</cacheModel>
<!--
=============================================================
======================== ALIAS
==============================
=============================================================
-->
<typeAlias alias="CursoDTO"
type="com.unafe.dto.cursos.CursoDTO"/>
<!--
=================================================================
======================== PARAMETERMAPS
==========================
=================================================================
-->
<parameterMap id="tipoSanitario" class="CursoDTO">
<parameter property="sanitario"/>
</parameterMap>
<parameterMap id="cursoId" class="CursoDTO">
<parameter property="id"/>
</parameterMap>
<parameterMap id="datosAlumnoSanitario"
class="AlumnoDTO">
<parameter property="id"/>
<parameter property="id"/>
<parameter property="sanitario"/>
</parameterMap>
<!--
=================================================================
======================== RESULTMAP
==============================
=================================================================
-->
<resultMap id="curso_resultado" class="CursoDTO">
<result property="id" column="CUR_ID" />
<result property="nombre" column="CUR_NOMBRE" />
<result property="temario" column="CUR_TEMARIO" />
<result property="creditos" column="CUR_CREDITOS"
/>
<result property="horas" column="CUR_NUMHORAS" />
<result property="sanitario" column="CUR_SANITARIO"
/>
<result property="precio" column="CUR_PRECIO" />
<result property="codigo" column="CUR_CODIGO" />
</resultMap>
<resultMap id="curso_resultado_para_lista"
class="CursoDTO">
<result property="id" column="CUR_ID" />
<result property="nombre" column="CUR_NOMBRE" />
<result property="codigo" column="CUR_CODIGO" />
<result property="sanitario" column="CUR_SANITARIO"
/>
</resultMap>
<!--
=================================================================
======================== CONSULTAS
==============================
=================================================================
-->
<select id="getCursos" resultClass="CursoDTO"
cacheModel="curso_cache">
SELECT CUR_ID AS id,
CUR_NOMBRE AS nombre,
CUR_TEMARIO AS temario,
CUR_CREDITOS AS creditos,
CUR_SANITARIO AS sanitario,
CUR_NUMHORAS AS horas,
CUR_PRECIO AS precio,
CUR_CODIGO AS codigo
FROM CURSO
</select>
<select id="getCursosPorTipo"
parameterMap="tipoSanitario"
resultMap="curso_resultado">
SELECT CUR_ID,
CUR_NOMBRE,
CUR_TEMARIO,
CUR_CREDITOS,
CUR_SANITARIO,
CUR_NUMHORAS,
CUR_PRECIO,
CUR_CODIGO
FROM CURSO
<dynamic prepend="where">
<isNotNull prepend="AND"
property="sanitario">
CUR_SANITARIO = #sanitario#
</isNotNull>
</dynamic>
</select>
<select id="getTipoDeCurso" parameterClass="int"
resultClass="java.lang.String">
SELECT CUR_SANITARIO
FROM CURSO
WHERE CUR_ID = #value#
</select>
<select id="getCursoPorID" parameterClass="int"
resultMap="curso_resultado">
SELECT CUR_ID,
CUR_NOMBRE,
CUR_TEMARIO,
CUR_CREDITOS,
CUR_SANITARIO,
CUR_NUMHORAS,
CUR_PRECIO,
CUR_CODIGO
FROM CURSO
WHERE CUR_ID = #value#
</select>
<select
id="selectCursosNoSeleccionadosEnUnPeriodo"
parameterClass="int"
resultMap="curso_resultado_para_lista">
SELECT CUR_ID,
CUR_CODIGO,
CUR_NOMBRE,
CUR_SANITARIO
FROM CURSO
WHERE CUR_ID NOT IN (SELECT CURPER_CURSO
FROM CURSO_PERIODOLECTIVO
WHERE CURPER_PERIODO = #value#)
ORDER BY CUR_SANITARIO,CUR_NOMBRE
</select>
<select id="selectCursosNoCompradosPorAlumno"
parameterMap="datosAlumnoSanitario"
resultMap="curso_resultado">
SELECT CUR_ID,
CUR_NOMBRE,
CUR_TEMARIO,
CUR_CREDITOS,
CUR_SANITARIO,
CUR_NUMHORAS,
CUR_PRECIO,
CUR_CODIGO
FROM CURSO, V_CURSOSPERIODOACTUAL
WHERE CUR_ID NOT IN(
<!-- CURSOS QUE NO ESTEN YA COMPRADOS EN EL
PERIODO LECTIVO ACTUAL -->
SELECT CCPL_CURSO
FROM COMPRA, COMPRA_CURSO_PERIODOLECTIVO
WHERE COM_ALUMNO = ?
AND COM_ESTADO IN ('A','E')
AND CCPL_COMPRA = COM_ID
AND CCPL_PERIODO = (SELECT PER_ID
FROM PERIODOLECTIVO
WHERE PER_FEC_INICIO <![CDATA[<=]]> SYSDATE
AND PER_FEC_FIN>=SYSDATE
)
)
AND CUR_ID NOT IN (
<!-- CURSOS APROBADOS ANTERIORMENTE -->
SELECT CUR_ID
FROM CURSO, EXAMEN, PRUEBAEXAMEN,
CURSO_PERIODOLECTIVO
WHERE CUR_ID=EXA_CURSO
AND EXA_ID=PEXA_EXAMEN
AND PEXA_ESTADO= 'AP'
AND PEXA_ALUMNO = ?
AND CURPER_CURSO=CUR_ID
AND CURPER_PERIODO IN (SELECT PER_ID
FROM PERIODOLECTIVO
WHERE PER_FEC_INICIO <![CDATA[<]]> SYSDATE
AND PER_FEC_FIN<![CDATA[<]]>SYSDATE)
)
AND CUR_SANITARIO=?
AND CPA_CURSO = CUR_ID
</select>
<!--
==============================================================
======================== INSERT
==============================
==============================================================
-->
<insert id="insertCurso"
parameterClass="CursoDTO">
<selectKey resultClass="int" keyProperty="id">
SELECT CURSO_SEQ.NEXTVAL AS ID
FROM DUAL
</selectKey>
INSERT INTO CURSO ( CUR_ID, CUR_NOMBRE,
CUR_TEMARIO, CUR_CREDITOS,
CUR_NUMHORAS, CUR_SANITARIO, CUR_PRECIO,
CUR_CODIGO)
VALUES ( #id#, #nombre#, #temario:VARCHAR#,
#creditos#, #horas#, #sanitario#,
#precio#, #codigo# )
</insert>
<!--
===============================================================
======================== UPDATES
==============================
===============================================================
-->
<statement id="updateCurso"
parameterClass="CursoDTO">
UPDATE CURSO
SET CUR_NOMBRE= #nombre#, CUR_TEMARIO=
#temario:VARCHAR#,
CUR_CREDITOS= #creditos#, CUR_NUMHORAS=
#horas#, CUR_SANITARIO= #sanitario#,
CUR_PRECIO= #precio#, CUR_CODIGO= #codigo#
WHERE CUR_ID = #id#
</statement>
<!--
===============================================================
======================== DELETES
==============================
===============================================================
-->
<delete id="deleteCursoPorID"
parameterClass="CursoDTO">
DELETE FROM CURSO WHERE CUR_ID = #id#
</delete>
</sqlMap>
I can attach all others xml files and a class to prove
the files.
Thanks a lot.
______________________________________________
Renovamos el Correo Yahoo!
Nuevos servicios, más seguridad
http://correo.yahoo.es
Re: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'
Posted by Larry Meadors <la...@gmail.com>.
Can you send your xml file as an attachment, and also provide a stack trace?
Larry
On 8/25/05, Cesar Villar <ce...@yahoo.es> wrote:
> Hi evereybody!!
> I have a dao layer defined in my sql-map-config with
> several sqlMaps. Recently, when i try to access to
> this layer i get this error:
> - AbstractUnafeDAO static block:
> com.ibatis.common.exception.NestedRuntimeException:
> Error occurred. Cause:
> com.ibatis.common.xml.NodeletException: Error parsing
> XML. Cause:
> com.ibatis.common.exception.NestedRuntimeException:
> Error parsing XPath '/sqlMapConfig/sqlMap'. Cause:
> com.ibatis.common.xml.NodeletException: Error parsing
> XML. Cause: org.xml.sax.SAXParseException: Falta
> elemento de raíz de documento.
>
> I've tried to delete all sqlMap references from the
> sql-map-config and included one by one. I discovered
> that only with a few got this error. So I clear the
> content of these XML archives with only
> <sqlMap></sqlMap>. But i'm having the same error.
>
> ¿What can I do? I have no idea to resolve it.
> Thanks a lot
>
>
>
> ______________________________________________
> Renovamos el Correo Yahoo!
> Nuevos servicios, más seguridad
> http://correo.yahoo.es
>