You can subscribe to this list here.
2002 |
Jan
(2) |
Feb
(157) |
Mar
(111) |
Apr
(61) |
May
(68) |
Jun
(45) |
Jul
(101) |
Aug
(132) |
Sep
(148) |
Oct
(227) |
Nov
(141) |
Dec
(285) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(518) |
Feb
(462) |
Mar
(390) |
Apr
(488) |
May
(321) |
Jun
(336) |
Jul
(268) |
Aug
(374) |
Sep
(211) |
Oct
(246) |
Nov
(239) |
Dec
(173) |
2004 |
Jan
(110) |
Feb
(131) |
Mar
(85) |
Apr
(120) |
May
(82) |
Jun
(101) |
Jul
(54) |
Aug
(65) |
Sep
(94) |
Oct
(51) |
Nov
(56) |
Dec
(168) |
2005 |
Jan
(146) |
Feb
(98) |
Mar
(75) |
Apr
(118) |
May
(85) |
Jun
(75) |
Jul
(44) |
Aug
(94) |
Sep
(70) |
Oct
(84) |
Nov
(115) |
Dec
(52) |
2006 |
Jan
(113) |
Feb
(83) |
Mar
(217) |
Apr
(158) |
May
(219) |
Jun
(218) |
Jul
(189) |
Aug
(39) |
Sep
(3) |
Oct
(7) |
Nov
(4) |
Dec
(2) |
2007 |
Jan
|
Feb
(2) |
Mar
(7) |
Apr
(3) |
May
(3) |
Jun
(8) |
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(4) |
Nov
(7) |
Dec
|
2008 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(4) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2009 |
Jan
(6) |
Feb
|
Mar
(1) |
Apr
(2) |
May
(1) |
Jun
(1) |
Jul
(10) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
(3) |
2010 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Urberg, J. <ju...@ve...> - 2002-07-18 16:13:55
|
>>I think fully working single-class-to-multiple-table mappings will take quite a while to implement.<< What about the option of defining a custom map object for a class. For those special cases (such as multiple table mappings), the custom map could handle the mapping to the database using hand coded SQL. |
From: Urberg, J. <ju...@ve...> - 2002-07-18 14:54:30
|
>> I propose the following MBean interface...<< >>public void setProperties(String properties);<< Would this be properties that are normally placed in the hibernate.properties file? |
From: Warwick B. <wb...@bt...> - 2002-07-18 10:46:02
|
Hi guys... i've been playing around with storing images in MySQL using = Hibernate - i had to make this change to store files larger than 255 = bytes : public MySQLDialect() { super(); register( Types.BIT, "BIT" ); register( Types.BIGINT, "BIGINT" ); register( Types.SMALLINT, "SMALLINT" ); register( Types.TINYINT, "TINYINT" ); register( Types.INTEGER, "INTEGER" ); register( Types.CHAR, "CHAR(1)" ); register( Types.VARCHAR, "TEXT" ); register( Types.VARCHAR, 255, "VARCHAR($l)" ); register( Types.FLOAT, "FLOAT" ); register( Types.DOUBLE, "DOUBLE PRECISION" ); register( Types.DATE, "DATE" ); register( Types.TIME, "TIME" ); register( Types.TIMESTAMP, "TIMESTAMP" ); // Let the data be around 4MB //register( Types.VARBINARY, "BLOB" ); //register( Types.VARBINARY, 255, "VARCHAR($l) BINARY" ); register( Types.VARBINARY, "MEDIUMBLOB" ); } |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-18 05:04:15
|
Aaaaahhhh finally! Thanks everyone for your help. I tracked it down to ParserHelper malfunctioning when hibernate.query.substitutions was not set. It was due to a fairly pointless performance optimisation being broken. Essentially the token stream was being processed *twice*. I had always been testing with the property set. But of course no-one else was using this brand-new feature yet ;) I'll have the fixed version 1.0.1b up this evening (4 or 5 hours from now). Thanks again Gavin |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-18 03:38:54
|
Okay, a long quote from the JBoss manual below tells me just about everything I need to know. You dont *have* to inherit any JBoss specific interfaces, etc. Approach (1) of the 3 approaches listed gives you a way to avoid this. I propose the following MBean interface package cirrus.hibernate.jmx; public interface HibernateServiceMBean { // the JNDI name public String getName(); public void setName(String jndiName); // bind / unbind the SessionFactory public void start() throws Exception; public void stop() throws Exception; public boolean isStarted(); public boolean setStarted(boolean started) throws Exception; public boolean getShowSQL(); public void setShowSQL(boolean showSQL); // a comma-seperated list of properties public void setProperties(String properties); public String getProperties(); // a comma-seperated list of resources public void setMapResources(String mapResourceList); public String getMapResources(); // some attributes for extra-important properties public String getDatasource(); public void setDatasource(String datasource); public boolean getUseOuterJoin(); public void setUseOuterJoin(boolean uoj); } which is not very different from John's original one, except it doesn't inherit org.jboss.util.ServiceMBean. ============================================================ Quote: Writing JBoss MBean Services ---------------------------- Writing a custom service that integrates into the JBoss server requires the use of the org.jboss.util.Service interface pattern if the custom service is depdendent on other JBoss services. This means that you cannot perform any JBoss service dependent intialization in any of the javax.management.MBeanRegistration interface methods. Instead, you must do this in the Service interface init and/or start methods. You need to do one of the following: (1) Add any of the Service methods that you want called on your MBean to your MBean interface. (2) Have your MBean interface extend the org.jboss.util.Service interface. (3) Have your MBean interface extend the org.jboss.util.ServiceMBean interface. This is a subinterface of org.jboss.util.Service that adds String getName(), int getState(), and String getStateString() methods. Which approach you choose depends on whether or not you want to be associated with JBoss specific code. If you don't, then you would use the first approach. If you don't mind, then the simplest approach is to have your MBean interface extend from org.jboss.util.ServiceMBean and your MBean implementation class extend from the abstract org.jboss.util.ServiceMBeanSupport class. This class implements the org.jboss.util.ServiceMBean interface except for the String getName() method. ServiceMBeanSupport provides implementations of the init, start, stop and destroy methods that integrate logging and JBoss service state management. Each method delegates any subclass specific work to initService, startService, stopService, and destroyService methods respectively. When subclassing ServiceMBeanSupport you would override one or more of the initService, startService, stopService, and destroyService methods in addition to getName as required. |
From: Christian B. <chr...@bl...> - 2002-07-18 03:00:52
|
On 18 Jul (11:14), Gavin_King/Cirrus%CI...@ci... wrote: > On the other hand, this is the exact area of the code that changed between > 1.0 and 1.0.1 so his bug report is utterly credible. Using the CVS snapshot, my test application is broken too: ### QUERY: SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name Produces: finding SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name SELECT DISTINCT addressGroup.address_group_id as address_group_id0, addressGroup.address_group_id as address_group_id1, addressGroup.name as name0, addressGroup.name as name1 FROM address_groups addressGroup WHERE 1=1 ORDER BY addressGroup.name addressGroup.name SELECT DISTINCT addressGroup.address_group_id as address_group_id0, addressGroup.address_group_id as address_group_id1, addressGroup.name as name0, addressGroup.name as name1 FROM address_groups addressGroup WHERE 1=1 ORDER BY addressGroup.name addressGroup.name closing session disconnecting session class java.sql.SQLException ERROR: parser: parse error at or near "addressgroup" This is simple mapping, just like the reported one but without any relationships and collections. Looks like the ORDER BY is broken and the _id0/_id1 stuff is too. Hibernate 1.0.1: ### QUERY: SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name finding SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name SELECT addressGroup FROM addressGroup IN CLASS AddressGroup ORDER BY addressGroup.name SELECT DISTINCT addressGroup.address_group_id, addressGroup.name FROM address_groups addressGroup WHERE 1=1 ORDER BY addressGroup.name SELECT DISTINCT addressGroup.address_group_id, addressGroup.name FROM address_groups addressGroup WHERE 1=1 ORDER BY addressGroup.name HTH -- Christian Bauer tu...@in... |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-18 01:30:11
|
I need some help here: Daniel Wunsch reports that the following query: session.find( "FROM person IN CLASS com.consol.loan.bo.Person WHERE person.login = ?", login, Hibernate.STRING ); Generated the following SQL in 1.0.1: SELECT DISTINCT person.id as id0, person.id as id1, person.password as password0, person.phone as phone0, person.login as login0, person.lastName as lastName0, person.email as email0, person.firstName as firstName0, person.phoneExt as phoneExt0, person.password as password1, person.phone as phone1, person.firstName as firstName1, person.phoneExt as phoneExt1 FROM Person person WHERE 1=1 AND ( person.login=? ) AND ( person.login=? ) and then failed with an exception, whereas in 1.0 it generated SELECT DISTINCT person.id, person.password, person.phone, person.login, person.lastName, person.email, person.firstName, person.phoneExt FROM Person person WHERE 1=1 AND ( person.login=? ) (the second is correct, clearly) His mapping looks like: <class name="com.consol.loan.bo.Person" table="Person" select="distinct"> <id name="id" type="long" column="id"> <generator class="hilo.long" /> </id> <property name="sunIdent" column="sunIdent" type="string" /> <property name="password" column="password" type="string" /> <property name="phone" column="phone" type="string" /> <property name="login" column="login" type="string" /> <property name="lastName" column="lastName" type="string" /> <property name="email" column="email" type="string" /> <property name="firstName" column="firstName" type="string" /> <property name="phoneExt" column="phoneExt" type="string" /> <list role="roles"> <key column="person" /> <index column="i" /> <many-to-many class="com.consol.loan.bo.Role" /> </list> </class> As a result I pulled 1.0.1 from the downloads page. Unfortunately I have not been able to reproduce this bug and his code is sufficiently close to so many things in the test suite that I should be seeing test failures all over the place but, actually, I'm not seeing any. On the other hand, this is the exact area of the code that changed between 1.0 and 1.0.1 so his bug report is utterly credible. If people would take a CVS snapshot (a current snapshot or the version tagged v1001) and test their systems against that, I would *very* much appreciate it. I'm completely stumped. Gavin |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-17 15:07:28
|
>I think you'd have to get the file's timestamp and then poll it at regular >intervals to see if it changed. I wanted to do that with the Hibernate >MBean I created but didn't have the time. Hmmmm....not totally convinced on this. Don't like the whole concept of polling the hard drive actually. I *can* be convined though.... >> That is the recommended way to deploy mappings, as far as I'm concerned. So we would definately allow this. << >Hmm. I've been assuming the use of one big mapping file. I supposed if you >put each class mapping in a seperate file, that would take care of it. It >would also make the part about checking for the mapping file changing more >difficult. I really like the idea of having little mapping files living in the same directory/jar as the class they map. I should more strongly recommend this in the documentation. Monolithic mapping files are much less elegant. >>As far as I can tell the only JBoss-specific thing in your MBean is the startService() / stopService() methods from the inherited JBossServiceMBean interface. (Since JBoss has a compatible license, we should be able to just distribute that interface along with Hibernate.) Then, as far as any other JMX client is concerned startService() / stopService() are just any old management operations that could be invoked by the user (rather than by the container in the case of JBoss).<< >How would the service get started in non-JBoss containers? I hadn't quite made up my mind on that yet. From a JMX client possibly. Though that would require user-interaction.... P.S. I realised my mistake above. Your *implementation* class actually inherits some JBoss-specific stuff. Ima have to track down that code to see what it does. Anyway, since JBoss is the only appserver that really supports JMX, I'm thinking mainly about non-application-server usage. It may turn out we need one MBean for JBoss and one for other JMX applications. Okay, let me get back to learning JMX, after I fix this damn bug in 1.0.1 :( |
From: Jon L. <jon...@xe...> - 2002-07-17 14:47:38
|
> > How would the service get started in non-JBoss containers? > Like JBoss, our self written application server uses JMX for all pluggable services (Thread Pools, Connection Pools, etc...). In the case of our application server we have an XML configuration file that lists all MBeans to startup at runtime, and we are able to define the startup / shutdown methods that get called after the MBeans are registered. After looking at the example that was created to wrap Hibernate as an MBean for JBoss, it would only take a few seconds to get it started up in our container. Jon... |
From: Urberg, J. <ju...@ve...> - 2002-07-17 12:52:24
|
>> > How about reloading the mappings every time the mapping file changes?...< What would be involved in this? ie. how would we know the mapping file changed, assuming we load it using getResourceAsStream()? << I think you'd have to get the file's timestamp and then poll it at regular intervals to see if it changed. I wanted to do that with the Hibernate MBean I created but didn't have the time. >> That is the recommended way to deploy mappings, as far as I'm concerned. So we would definately allow this. << Hmm. I've been assuming the use of one big mapping file. I supposed if you put each class mapping in a seperate file, that would take care of it. It would also make the part about checking for the mapping file changing more difficult. >>As far as I can tell the only JBoss-specific thing in your MBean is the startService() / stopService() methods from the inherited JBossServiceMBean interface. (Since JBoss has a compatible license, we should be able to just distribute that interface along with Hibernate.) Then, as far as any other JMX client is concerned startService() / stopService() are just any old management operations that could be invoked by the user (rather than by the container in the case of JBoss).<< How would the service get started in non-JBoss containers? Regards, John Urberg |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-17 01:40:53
|
>I would think it would be much simpler to have on per factory. In >the case of JBoss, the user could setup each factory with a seperate >MBean entry in the jboss.jcml file. agreed. thats what I was expecting you to say. >How about reloading the mappings every time the mapping file changes? >JBoss does something like this with EJB jars. If you copy an EJB jar >to the deploy directory it will automatically undeploy the EJB and then >deploy the new EJB. It would be cool not to have to bounce the server each >time a mapping changed. What would be involved in this? ie. how would we know the mapping file changed, assuming we load it using getResourceAsStream()? >Another cool feature (though probably app server specific) would be the >ability to include the mapping with the EJB jar file. That is the recommended way to deploy mappings, as far as I'm concerned. So we would definately allow this. >> P.S. I would like this MBean to be generic - useable by other JMX applications apart from JBoss. (I think it is, anyway.)<< >JBoss adds the idea of a service life cycle and introduces it's own >interface for that purpose. The bean I created depends on that interface >plus some other JBoss support stuff. JMX itself does not have a concept >of a life cycle or any ordering with the startup of different beans (such >as a JNDI service) which should make your attempt at a generic MBean >interesting. As far as I can tell the only JBoss-specific thing in your MBean is the startService() / stopService() methods from the inherited JBossServiceMBean interface. (Since JBoss has a compatible license, we should be able to just distribute that interface along with Hibernate.) Then, as far as any other JMX client is concerned startService() / stopService() are just any old management operations that could be invoked by the user (rather than by the container in the case of JBoss). (I am in the process of learning JMX, so let me know if I went wrong somewhere there...) |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-17 01:11:13
|
>What would be involved in adding support for this in Hibernate? I don't >need update capablities (at least not yet :) ). Hey, if you don't need update/insert, why not just define a database view and map the class to that view as if it were a normal table... Otherwise you would need to implement your MessageViewList class as a facade on top of three persistent classes with one-to-one associations. If you enable outerjoin fetching on the associations, you will end up with essentially what you are looking for (ie MessageViewList will be fetched in a single query). I think fully working single-class-to-multiple-table mappings will take quite a while to implement. |
From: Urberg, J. <ju...@ve...> - 2002-07-16 15:31:22
|
I'm starting a new application I was hoping to start using Hibernate on. Sure enough, the first object I need to map is a "Narrow View" I'm creating for a list. It needs to join four tables (2 are the same table). The SQL would look something like this: select recipient.firstname, recipient.lastname, message.date, message.subject, sender.firstname, sender.lastname from message, user sender, message_box, user receipient where recipient.userid = ? and message_box.userid = recipient.userid and message_box.type = 1 and message.id = message_box.message_id and sender.id = message.senderid; I'd like the results to map to: class MessageListView { Name recipientName; Date date; String subject; Name senderName; } What would be involved in adding support for this in Hibernate? I don't need update capablities (at least not yet :) ). Thanks, John |
From: Urberg, J. <ju...@ve...> - 2002-07-16 15:12:55
|
>> Now, is the best way to support multiple SessionFactories to allow multiple instances of the MBean, or should a single MBean manage all the factories? << I would think it would be much simpler to have on per factory. In the case of JBoss, the user could setup each factory with a seperate MBean entry in the jboss.jcml file. >> Can anyone think of any other issues/requirements? << How about reloading the mappings every time the mapping file changes? JBoss does something like this with EJB jars. If you copy an EJB jar to the deploy directory it will automatically undeploy the EJB and then deploy the new EJB. It would be cool not to have to bounce the server each time a mapping changed. Another cool feature (though probably app server specific) would be the ability to include the mapping with the EJB jar file. >> P.S. I would like this MBean to be generic - useable by other JMX applications apart from JBoss. (I think it is, anyway.)<< JBoss adds the idea of a service life cycle and introduces it's own interface for that purpose. The bean I created depends on that interface plus some other JBoss support stuff. JMX itself does not have a concept of a life cycle or any ordering with the startup of different beans (such as a JNDI service) which should make your attempt at a generic MBean interesting. >> John, may I add your class to a new package cirrus.hibernate.jmx in CVS?<< Yes. |
From: Viktor S. <phr...@im...> - 2002-07-16 12:11:45
|
hi, Roman Seidl wrote: > > Is it a performance benefit to map to multiple tables? If not it might > be useless anyway - might depend on the database... > usually you don't do it for the perf. benefit, but for other useful aspects. imho it makes data maintenance easier in the long run (eg. schema chgs, or adding db constraints), not to mention easthetic pleasure (or just ease-of-use w/ reporting tools) or db limitiations (nobody likes too many columns)... on the performance side: - writing definitely becomes worse - reading might become worse (depending on db and your queries) - space consumption is better > >Usually it would be a performance *loss*, except for very deep class >heirarchies. However, for people mapping legacy data or for people > umm.. i think it would become worse as the hierarchy gets deeper... viktor |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-16 03:42:48
|
> Session.flush() (using multiple sql updates) At some stage we would need functionality to detect exactly which properties changed and then update only those tables with changed properties. But lets not worry about that for now. Its easy to plug in later. |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-16 03:42:45
|
>I=B4ve been thinking of extending Hibernate to allow for a seperate ta= ble >for subclasses. Cool! We need this feature :) >I allready developed a test case when i was on holliday >last week. I would extend the mapping file with a possible table >property in the subclass element that would allow the additional >properties of this class to be mapped to another table. Yes, thats exactly how I think we should approach this. I think the biggest problem we will have here is making this new mapping style work= together with outerjoin fetching. What you should be able to do as a temporary approach is to implement this ONLY for the case where hibernate.use_outer_join=3Dfalse. (I can take over from there.) The second difficult part will be integrating this with find() queries. Once again, I will take care of this.... So basically, If you could get it working for Session.load() (using ANSI outerjoins) Session.save() (using multiple sql inserts) Session.flush() (using multiple sql updates) Session.lock() (using ANSI outerjoins ... trivial ) then you should get Session.iterate() just about for free. And then I will do Session.find() and we'll worry about the outerjoin fetching stuff later. What this means is that most of the work (for you) would be in the one class cirrus.hibernate.impl.ClassPersister It may or may not be necessary to subclass ClassPersister to add this functionality. Whichever way is fine by me..... >Is it a performance benefit to map to multiple tables? If not it might= >be useless anyway - might depend on the database... Usually it would be a performance *loss*, except for very deep class heirarchies. However, for people mapping legacy data or for people who love normalized relational models, it is a very-much-needed feature. looking forward..... peace Gavin= |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-16 00:39:24
|
heh. I added this fix to CVS the night before last.... :) I think I forgot to mention it in the changelog though... >Gavin- > >Could you include the patch mentioned here in the next release? > >https://sourceforge.net/forum/message.php?msg_id=1616327 > >The patch just adds an 'exists' check to prevent NPEs in my code block in >MappingByReflection. |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-16 00:34:34
|
>Only if everything is in one big EJB jar file. If they are split between >seperate EJB jar files, then there is still a problem. > >If one was to put mappings in seperate files for each class (like the >eg/Foo.hbm.xml and eg/Bar.hbm.xml example in the docs), you could wait to >load the mapping for a class until the class was first accessed. That >might fix the problem. Remember that Hibernate will let you have multiple instances of SessionFactory. It would seem sensible to have a different SessionFactory for each EJB jar. So, drawing up a little requirements list, we need a JMX interface to Hibernate that lets us: 1. manipulate all properties dynamically at runtime 2. configure multiple SessionFactory instances with specified mappings 3. start and stop the Hibernate "service" (ie. register and deregister the SessionFactories in JNDI) 4. actually build the SessionFactory when it is first used issues: 1. might require some modification to how certain properties are currently managed by Hibernate (the system-level properties). 4. will require some kind of trickery with a delegating class since the javax.naming.event package has no objectLookedUp() event. Now, is the best way to support multiple SessionFactories to allow multiple instances of the MBean, or should a single MBean manage all the factories? Can anyone think of any other issues/requirements? P.S. I would like this MBean to be generic - useable by other JMX applications apart from JBoss. (I think it is, anyway.) John, may I add your class to a new package cirrus.hibernate.jmx in CVS? |
From: Eric E. <ev...@pr...> - 2002-07-15 16:30:22
|
Gavin- Could you include the patch mentioned here in the next release? https://sourceforge.net/forum/message.php?msg_id=1616327 The patch just adds an 'exists' check to prevent NPEs in my code block in MappingByReflection. Thanks, Eric Everman At 09:48 AM 7/15/2002, you wrote: > > As there doesn't seem to be a hibernate-user list, i'm going to post > > this here. =) > >Actually theres an active user forum on the sourceforge project page :) > > >I'm trying to recreate the mapping xml for the cirrus.test.Simple class > but >can't get it to work. Here is what i'm doing : > > > >I guess i'm doing somthing wrong with the uid=XXXXX . > >Apparently ReflectedProperty.isUidOK() decides to ignore properties that >aren't long, Long or String. I guess this is sort of justified by the fact >that all of Hibernate's built-in id generators return either Long or >String but I will change it anyway. > >Thanks for reporting this problem. > >Gavin >------------------------------------------------------- This sf.net email >is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf >_______________________________________________ Hibernate-devel mailing >list Hib...@li... >https://lists.sourceforge.net/lists/listinfo/hibernate-devel |
From: Urberg, J. <ju...@ve...> - 2002-07-15 16:19:40
|
>> Now as for this issue of the MBean needing classpath to the persistent classes, am I right in assuming that no management calls to the MBean would ever be able to see the application classpath? << I believe that is the case. My (limited) understanding is that anything in an EJB jar gets its own class path and class loader seperate from the rest of the server and other EJBs. >> If so, is a possible solution to create a new implentation of the SessionFactory interface that creates a datastore and builds a SessionFactory when first invoked by the application ... and then forwards requests to the actual SessionFactory implementation? << Only if everything is in one big EJB jar file. If they are split between seperate EJB jar files, then there is still a problem. If one was to put mappings in seperate files for each class (like the eg/Foo.hbm.xml and eg/Bar.hbm.xml example in the docs), you could wait to load the mapping for a class until the class was first accessed. That might fix the problem. |
From: Roman S. <hib...@gr...> - 2002-07-15 16:15:21
|
Hi! I´ve been thinking of extending Hibernate to allow for a seperate table for subclasses. I allready developed a test case when i was on holliday last week. I would extend the mapping file with a possible table property in the subclass element that would allow the additional properties of this class to be mapped to another table. Is it a performance benefit to map to multiple tables? If not it might be useless anyway - might depend on the database... cheers roman |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-15 15:04:08
|
<P>> As there doesn't seem to be a hibernate-user list, i'm going to pos= t <BR>> this here. =3D)<BR><BR>Actually theres an active user forum on t= he sourceforge project page :)<BR><BR>>I'm trying to recreate the mappin= g xml for the cirrus.test.Simple class but >can't get it to work. Here i= s what i'm doing :<BR>><BR>>I guess i'm doing somthing wrong with the= uid=3DXXXXX .<BR><BR>Apparently ReflectedProperty.isUidOK() decides to ign= ore properties that aren't long, Long or String. I guess this is sort of ju= stified by the fact that all of Hibernate's built-in id generators return e= ither Long or String but I will change it anyway.<BR><BR>Thanks for reporti= ng this problem.<BR><BR>Gavin<BR></P>= |
From: Gavin_King/Cirrus%<CI...@ci...> - 2002-07-15 14:52:39
|
> I have a first shot at a JBoss MBean to set up Hibernate. Thanks for this. I will have a go at installing JBoss and getting this working sometime in the next few days. Now as for this issue of the MBean needing classpath to the persistent classes, am I right in assuming that no management calls to the MBean would ever be able to see the application classpath? If so, is a possible solution to create a new implentation of the SessionFactory interface that creates a datastore and builds a SessionFactory when first invoked by the application ... and then forwards requests to the actual SessionFactory implementation? Gavin |
From: Warwick B. <TA...@ho...> - 2002-07-15 13:51:21
|
As there doesn't seem to be a hibernate-user list, i'm going to post = this here. =3D) I'm trying to recreate the mapping xml for the cirrus.test.Simple class = but can't get it to work. Here is what i'm doing : usage: class.name | uid=3D<newUID> | done ? cirrus.hibernate.test.Simple addClass(cirrus.hibernate.test.Simple) ? uid=3Dcount niceKey(count)=3D> count uid UID id ID key KEY pk PK count uid UID id ID = key KEY pk PK ? done <?xml version=3D"1.0"?> <!DOCTYPE hibernate-mapping SYSTEM "DTD_PATH/hibernate-mapping.dtd"> <!-- cirrus.hibernate.test.Simple cannot be added, no UID found! --> <hibernate-mapping> </hibernate-mapping> I guess i'm doing somthing wrong with the uid=3DXXXXX . Little Help? thanks, Waz. =3D) |