I was wondering if we might should go one step further. If there is only one DataNode, perhaps have the option of leaving the entity or DataNode name out of those calls? (Can throw an exception if there are multiple DataNodes registered.) That might be more intuitive for most (and the typical use-case).
mrg On Wed, Sep 5, 2012 at 1:43 AM, Andrus Adamchik <[email protected]> wrote: > A bit OT, since Bob has found a solution already... Cayenne 3.1 makes it a > bit easier to obtain a DataSource, compared to the earlier versions: > > Connection connection = > serverRuntime.getDataSource("DataNode").getConnection(); > > Andrus > > On Sep 4, 2012, at 2:05 PM, Bryan Lewis wrote: > >> In you really need to get a connection, this has worked for me: >> >> Connection connection = >> dataContext.getParentDataDomain().getNode("DataNode").getDataSource().getConnection() >> >> >> On Mon, Sep 3, 2012 at 8:55 PM, Bob Harner <[email protected]> wrote: >> >> >>> Alternatively, how can I get access to the database connection so I can run >>> straight JDBC? >>> >>> private void backUpDatabase(Connection conn) throws SQLException >>> { >>> String sqlstmt = "CALL SYSCS_UTIL.SYSCS_BACKUP_DATABASE(?)"; >>> CallableStatement cs = conn.prepareCall(sqlstmt); >>> cs.setString(1,"D:/dbbackups/"); >>> cs.execute(); >>> cs.close(); >>> } >>> >
