Yes, I know. The point I was making - why should it be needed to override the default service if you just want to load from some other configuration file? Rather than a boolean symbol value you could pass the default service a file name, right?
Kalle On Tue, May 5, 2009 at 2:25 AM, Kristian Marinkovic < kristian.marinko...@porsche.co.at> wrote: > hi Kalle, > > since 5.0.18 (or before, :)) the DefaultHibernateConfigurer is an own > service, > therefore it is easy to override it with an alias contribution. if you > don't want to > override the service you can set the HibernateConstants. > DEFAULT_CONFIGURATION > symbol to false to prevent the service from executing. > > g, > kris > > > > > > Kalle Korhonen <kalle.o.korho...@gmail.com> > 01.05.2009 19:03 > Bitte antworten an > "Tapestry users" <users@tapestry.apache.org> > > > An > Tapestry users <users@tapestry.apache.org> > Kopie > > Thema > Re: T5 Override/Replace DefaultHibernateConfigurer > > > > > > > This is an old thread, but still relevant to T5.1. I think Daniel is > completely right; the DefaultHibernateConfigurer always calls > Configuration.configure() which always sends Hibernate looking for > hibernate.cfg.xml. I know it's not too difficult to create your own > implementation of HibernateConfigurer and make it do what you want, but I > think at least the case where you just want to read from hibernate config > file with some other name is a fairly common scenario and the filename > could > be just a property of DefaultHibernateConfigurer that by default returns > "hibernate.cfg.xml" but which you could set to a different value. I know > at > least Kristian M. has worked on similar issues, what do people think, > should > I open an enhancement request for it? > > Kalle > > > On Thu, May 1, 2008 at 2:40 PM, Daniel Jue <teamp...@gmail.com> wrote: > > > Has anyone else tried replacing the DefaultHibernateConfigurer? I can > > add another configurator in my app module like this: > > > > public static void contributeHibernateSessionSource( > > OrderedConfiguration<HibernateConfigurer> config, > > ClassNameLocator classNameLocator, > > HibernateEntityPackageManager packageManager) { > > config.add("Default", new HibernateConfigurer() { > > public void > > configure(org.hibernate.cfg.Configuration arg0) { > > HibernateUtil.touch();// just in case > this > > is the > > // first time it's been accessed. > > arg0 = HibernateUtil.getConfiguration(); > > } > > }); > > } > > > > > > but it doesn't actually replace the Default configuration. I haven't > > looked but I guess the OrderedConfiguration is based on a List rather > > than a Map/Set. > > > > The org.hibernate.cfg.Configuration I want to use is completely set up > > programmatically. It uses set properties and adds in annotated > > classes, and makes no use of any XML files. > > > > > > > > This is where the original default is added: > > > > public class HibernateModule > > ... > > 131 /** > > 132 * Adds the following configurers: <ul> <li>Default - > > performs default hibernate configuration</li> <li>PackageName > > 133 * - loads entities by package name</li> </ul> > > 134 */ > > 135 public static void > > > contributeHibernateSessionSource(OrderedConfiguration<HibernateConfigurer> > > config, > > 136 final > > ClassNameLocator classNameLocator, > > 137 final > > HibernateEntityPackageManager packageManager) > > 138 { > > 139 config.add("Default", new DefaultHibernateConfigurer()); > > 140 config.add("PackageName", new > > PackageNameHibernateConfigurer(packageManager, classNameLocator)); > > 141 } > > > > > > The issue is Tapestry will call configuration.configure on > > DefaultHibernateConfigurer() which send hibernate looking for an xml > > file. > > > > I'd rather not have a fake hibernate.cfg.xml just to make it work. > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > > For additional commands, e-mail: users-h...@tapestry.apache.org > > > > > >