¿Cómo se puede convertir por un conjunto de resultados de consulta de Java de ColdFusion en Railo?

StackOverflow https://stackoverflow.com/questions/2227134

Pregunta

La siguiente funciona bien en CFMX 7 y CF8, y me gustaría suponer CF9 así:

<!--- 'conn' is a JDBC connection --->
<cfset stat = conn.createStatement() />
<cfset rs = stat.executeQuery(trim(arguments.sql)) />

<!--- convert this Java resultset to a CF query recordset --->
<cfset queryTable = CreateObject("java", "coldfusion.sql.QueryTable")>
<cfset queryTable.init(rs) >
<cfset query = queryTable.FirstTable() />

Esto crea una declaración usando un driver JDBC, ejecuta una consulta en contra de ella, poniéndola en un conjunto de resultados de Java, y luego coldfusion.sql.QueryTable se instancia, pasa el objeto resulset Java, y luego se llama queryTable.FirstTable () , que devuelve un conjunto de resultados coldfusion real (por cfloop y similares).

El problema viene con una diferencia en la aplicación de Railo. La ejecución de este código en Railo devuelve el siguiente error:. No se Constructor juego para coldfusion.sql.QueryTable (org.sqlite.RS) encontrados

He vertido el objeto java Railo, y no veo init () entre los métodos. Me estoy perdiendo algo simple? Me gustaría conseguir este trabajo en Railo también.

Tenga en cuenta: estoy haciendo una conexión sin DSN a una base de datos SQLite. Entiendo cómo configurar un origen de datos CF. Mi único inconveniente en este momento está haciendo la traducción de un resultado de Java se establece en una consulta Railo.

¿Fue útil?

Solución

Mirando el código fuente Railo, veo que railo.runtime.type.QueryImpl podría satisfacer sus necesidades. Implementa railo.runtime.type.Query y acepta un conjunto de resultados en su constructor, pero no parece poner en práctica QueryTable.

Si esa es la clase correcta, tendrá que pasar en un conjunto de resultados y una cadena para el nombre de la consulta, ya que no tiene un constructor que sólo se necesita un conjunto de resultados.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top