Yes, it exists.
Here i paste the complete Operadores.xml file:
<?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="operadores">
<typeAlias alias="Map" type="java.util.Map" />
<cacheModel id="cacheConsulta" type="LRU">
<flushInterval minutes="30" />
<flushOnExecute statement="alta"/>
<flushOnExecute statement="baja"/>
<flushOnExecute statement="modificacion"/>
<property name="size" value="100" />
</cacheModel>
<resultMap class="java.util.HashMap" id="resultadoOperador">
<result property="telefono" column="TELEFONO"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="nombre" column="NOMBRE"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="habilitado" column="HABILITADO"
javaType="boolean" jdbcType="INTEGER"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean"/>
<result property="periodo_recepcion" column="DIAS_SEMANA"
javaType="int" jdbcType="VARCHAR"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoPeriodoRecepcion"
/>
<result property="perfil" column="ID_PERFIL" javaType="int"
jdbcType="INTEGER"/>
<result property="id_parque" column="ID_PARQUE"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="horario_recepcion_desde" column="HORA_INI"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="horario_recepcion_hasta" column="HORA_FIN"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="envio_automatico" column="ENVIO_AUTO"
javaType="java.lang.String" jdbcType="VARCHAR"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean"/>
<result property="horario_envio_automatico"
column="HORARIO_ENVIO_AUTO" javaType="java.lang.String" jdbcType="VARCHAR"/>
</resultMap>
<!-- <select id="consulta" resultMap="resultadoOperador"> -->
<select id="consulta" parameterClass="Map"
resultMap="resultadoOperador" cacheModel="cacheConsulta">
SELECT
TELEFONO, NOMBRE, HABILITADO,
DIAS_SEMANA,
ID_PERFIL,
ID_PARQUE,
HORA_INI, HORA_FIN,
ENVIO_AUTO, HORARIO_ENVIO_AUTO
FROM
GSM_V_OPERADORES
</select>
<insert id="alta" parameterClass="Map">
INSERT INTO GSM_V_OPERADORES
(TELEFONO, NOMBRE, ID_PERFIL,
ID_PARQUE, HABILITADO,
ENVIO_AUTO, HORARIO_ENVIO_AUTO,
DIAS_SEMANA, HORA_INI, HORA_FIN)
VALUES
(#telefono#, #nombre#, #perfil#, #idParque#,
#habilitado,javaType=java.lang.Boolean,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean#,
#envioAutomatico,javaType=java.lang.Boolean,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean#,
#horarioEnvioAutomatico#,
#periodoRecepcion,javaType=java.lang.Integer,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoPeriodoRecepcion#,
#horarioRecepcionDesde#, #horarioRecepcionHasta#)
</insert>
<update id="modificacion" parameterClass="Map">
UPDATE GSM_V_OPERADORES SET
<dynamic>
<isNotEmpty property="telefono">
TELEFONO = #telefono#
</isNotEmpty>
<isNotEmpty property="nombre" prepend=", ">
NOMBRE = #nombre#
</isNotEmpty>
<isNotEqual property="perfil" compareValue="0" prepend=", ">
ID_PERFIL = #perfil#
</isNotEqual>
<isNotEmpty property="idParque" prepend=", ">
ID_PARQUE = #idParque#
</isNotEmpty>
<isNotNull property="habilitado" prepend=", ">
HABILITADO =
#habilitado,javaType=java.lang.Boolean,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean#
</isNotNull>
<isNotNull property="envioAutomatico" prepend=", ">
ENVIO_AUTO =
#envioAutomatico,javaType=java.lang.Boolean,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean#
</isNotNull>
<isNotEmpty property="horarioEnvioAutomatico" prepend=", ">
HORARIO_ENVIO_AUTO = #horarioEnvioAutomatico#
</isNotEmpty>
<isNotEmpty property="periodoRecepcion" prepend=", ">
DIAS_SEMANA =
#periodoRecepcion,javaType=java.lang.Integer,handler=com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoPeriodoRecepcion#
</isNotEmpty>
<isNotEmpty property="horarioRecepcionDesde" prepend=", ">
HORA_INI = #horarioRecepcionDesde#
</isNotEmpty>
<isNotEmpty property="horarrioRecepcionHasta" prepend=", ">
HORA_FIN = #horarioRecepcionHasta#
</isNotEmpty>
</dynamic>
WHERE TELEFONO = #telefono#
</update>
<delete id="baja" parameterClass="Map">
DELETE FROM GSM_TELEFONOS
WHERE TELEFONO = #telefono#
</delete>
</sqlMap>
Niels Beekman escribió:
Does the "modificacion" exist somewhere in your sqlmap-file? You excluded some parts by
replacing it with "<...>", so I cannot verify that.
Second, the commented select uses a resultClass while the uncommented select
uses a resultMap, but I don't think that matters in this case.
Niels
-----Original Message-----
From: Serafín Orillán Chaparro [mailto:[EMAIL PROTECTED]
Sent: dinsdag 27 juni 2006 13:41
To: [email protected]
Subject: Re: Error using caches ("There is no statement named...")
Sure!
Here you have my Operadores.xml map file. The problem arises when i
discomment out the cacheModel declaration, no matter if i use it in the
select statement or not.
<sqlMap namespace="operadores">
<typeAlias alias="Map" type="java.util.Map" />
<!--
<cacheModel id="cacheConsulta" type="LRU">
<flushInterval minutes="30" />
<flushOnExecute statement="alta"/>
<flushOnExecute statement="baja"/>
<flushOnExecute statement="modificacion"/>
<property name="size" value="100" />
</cacheModel>
-->
<resultMap class="java.util.HashMap" id="resultadoOperador">
<result property="telefono" column="TELEFONO"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="nombre" column="NOMBRE"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="habilitado" column="HABILITADO"
javaType="boolean" jdbcType="INTEGER"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean"/>
<result property="periodo_recepcion" column="DIAS_SEMANA"
javaType="int" jdbcType="VARCHAR"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoPeriodoRecepcion"
/>
<result property="perfil" column="ID_PERFIL" javaType="int"
jdbcType="INTEGER"/>
<result property="id_parque" column="ID_PARQUE"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="horario_recepcion_desde" column="HORA_INI"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="horario_recepcion_hasta" column="HORA_FIN"
javaType="java.lang.String" jdbcType="VARCHAR"/>
<result property="envio_automatico" column="ENVIO_AUTO"
javaType="java.lang.String" jdbcType="VARCHAR"
typeHandler="com.isotrol.navantia.sms.accesoBD.dao.ManejadoresTipos.ManejadorTipoBoolean"/>
<result property="horario_envio_automatico"
column="HORARIO_ENVIO_AUTO" javaType="java.lang.String" jdbcType="VARCHAR"/>
</resultMap>
<select id="consulta" resultMap="resultadoOperador">
<!-- <select id="consulta" parameterClass="Map"
resultClass="java.util.HashMap" cacheModel="cacheConsulta"> -->
SELECT
TELEFONO, NOMBRE, HABILITADO,
DIAS_SEMANA,
ID_PERFIL,
ID_PARQUE,
HORA_INI, HORA_FIN,
ENVIO_AUTO, HORARIO_ENVIO_AUTO
FROM
GSM_V_OPERADORES
</select>
<...>
</sqlMap>
--
Serafín Orillán Chaparro
Isotrol S.A.
Avda. de la Innovación 1, 3ª planta
+34 955 036 800
e-mail: [EMAIL PROTECTED]