Getting at the DataBase
uPortal's IChannel API is very good at configurably provisioning IChannel instances with String configuration parameters, which can be specified at channel publish and/or subscribe time and are mediated by a declaratively configurable channel publishing workflow (CPDs). uPortal is much less elegant at injecting into channels the non-String resources they need.
In an IChannel, you can get at a DataSource via RDBMServices, via a JNDI lookup, or via Spring dependency injection if you go through ChannelToBeanProxy.
CSqlQuery exemplifies the DataSource from RDBMServices approach.