Hi Armin, many thanks for the patch, it works fine! :)
-----Ursprüngliche Nachricht----- Von: Armin Waibel [mailto:[EMAIL PROTECTED] Gesendet: Samstag, 24. März 2007 00:19 An: OJB Users List Betreff: Re: ReportQueryBySQL Hi Norbert, [EMAIL PROTECTED] wrote: > Hello, we use OJB as persistence layer. Due to project specific > needs, we've built another layer on top of OJB and we can/may not use > jdbc at all anymore. The problem now is that we need queries that > cannot be built with Query/Criteria objects because there is no > proper mapping that could handle these scenarios. Is there a way to > execute any kind of select statements without specifying a mapping > and a target persistence class? I'd like to execute a select > statement and get the result in the way as for ReportQueries. Eg: > Query query = new QueryBySQL(null, selectString); > persister.getReportQueryIteratorBySQLQuery(query); // note the 'SQL' > > The thing is that we cannot create mapping for any of these very > specific queries, nor we can use jdbc. > > Any chance to get this done with OJB? Many thanks! Sorry, currently this is not possible. I setup a test to reproduce your issue. After some time and a hack (add 7 lines of code in 3 classes) I was able to execute arbitrary sql-statements using a report query (based on latest version from SVN OJB_1_0_RELEASE branch): TEST ---- String sql = "select * from Artikel as A1 where A1.Artikelname = 'testReportQueryBySql_1174691153125'"; Query query = QueryFactory.newQuery(null, sql); Iterator it = broker.getReportQueryIteratorByQuery(query); while(it.hasNext()) { Object o = it.next(); System.out.println("result: " + ArrayUtils.toString(o)); } OUTPUT ------ result: {200017,testReportQueryBySql_1174691153125,0,<null>,<null>,0.0,0,0,0,0} result: {200018,testReportQueryBySql_1174691153125,0,<null>,<null>,0.0,0,0,0,0} OJB use the ResultSetMetadata of the ResultSet to determine the correct java field type. So this solution requires a proper jdbc-driver implementation. Would this hack satisfy you? regards, Armin > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] For > additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]