Cadena MyBatis como parámetro
Quiero usar un parámetro de cadena para una declaración de selección en MyBatis. Mi mapper.xml:
<select id="selectAll" parameterType="String" resultMap="fastXMLResultMap">
SELECT CREATIONDATE, DOCUMENTID, TITEL, REGTITEL, INFORCEDATE, DOCTYPE
FROM #{databBaseTable}
</select>
Y la función de llamada:
public List<FastXMLObject> selectAll(String databBaseTable) {
SqlSession session = sqlSessionFactory.openSession();
System.out.println("Table: "+databBaseTable);
try {
List<FastXMLObject> list = session.selectList("FastXMLObject.selectAll",databBaseTable);
return list;
} finally {
session.close();
}
}
La cadena dataBaseTable es el nombre de la tabla de mi base de datos (quien lo hubiera pensado) porque quiero obtener datos dinámicamente de tablas veriosas.
Pero desafortunadamente esto no funciona: Error: ORA-00903: Ungültiger Tabellenname (nombre de tabla no válido) pero no lo es. Cuando imprimo el valor de "databBaseTable" es el nombre exacto de la tabla. Y cuando escribo el nombre de la tabla en mi mapper.xml sin una variable, funciona. ¿Qué hago mal?