Thomas,
You are right. It appears that by executing the
following:
BaseTABLENAMEPeer.executeStatement("SET CURRENT SQLID
= '" +
db2Schema...
for each of the tables that would have been deleted in
a Cascade Delete, it somehow re-initialized Tables in
the dbMap.
Now all I have to do is get the Updates and Inserts
working..
Thanks for all your help!
Jim
--- Thomas Fischer <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
> Jim,
>
> Sorry, I should have read your mail more cautiously;
> I was again
> mistaken...
> But nonetheless, I am still confused.
>
> There should be code in the generated xxxBasePeer
> class which looks like
>
> public static MapBuilder getMapBuilder(String
> name)
> {
> try
> {
> MapBuilder mb = (MapBuilder)
> mapBuilders.get(name);
> // Use the 'double-check pattern' for
> syncing
> // caching of the MapBuilder.
> if (mb == null)
> {
> synchronized (mapBuilders)
> {
> mb = (MapBuilder)
> mapBuilders.get(name);
> if (mb == null)
> {
> mb = (MapBuilder)
> Class.forName(name).newInstance();
> // Cache the MapBuilder
> before it is built.
> mapBuilders.put(name, mb);
> }
> }
> }
> ....
>
> This should cache the map builder in the dbMap. The
> method is called from
> the static initializer of the xxxBasePeer class,
> which should be called at
> the latest when you call xxxPeer.DoDelete(). If you
> have the possibility to
> debug your code, you might want to put a breakpoint
> in there and see
> whether and when it it called.
>
> There are two reasons I can think of why the Table
> does not appear in the
> dbMap (there might be more)
> 1) Torque is not initialized or it is initialized
> more than once
> 2) For some obscure reason, the xxxBasePeer class is
> not loaded while you
> execute the doDelete().
>
> To exclude 2), you can force the classLoader to load
> the xxxBasePeer class
> by issuing
>
class.ForName("fully.qualified.name.of.xxxBasePeer");
> before the delete. But ") is very improbable, as the
> Java Language
> specification explicitly states that a class is
> loaded immediately before
> you execute one of its static methods....
>
> JLS 2.0 �12.4.1--
> "A class or interface type T will be initialized
> immediately before the
> first occurrence of any one of the following:
> . T is a class and an instance of T is created.
> . T is a class and a static method declared by T is
> invoked.
> . A static field declared by T is assigned.
> . A static field declared by T is used and the
> reference to the field is
> not a compile-time constant (�15.28). References to
> compile-time constants
> must be resolved at compile time to a copy of the
> compile-time constant
> value, so uses of such a field never cause
> initialization."
>
> If you can solve this, I (and probably some more
> people on the list) would
> be very interested to know how this problem could
> originate.
>
> Thomas
>
>
>
>
> [EMAIL PROTECTED] schrieb am 14.03.2005 19:49:22:
>
> >
> > Tom,
> >
> > Yes it does. In the tables MapBulder class it has
> the following:
> >
> > dbMap = Torque.getDatabaseMap("default");
> > dbMap.addTable("PMTEM021_POLOFFR");
> > TableMap tMap =
> dbMap.getTable("PMTEM021_POLOFFR");
> > tMap.setPrimaryKeyMethod("none");
> > tMap.addPrimaryKey("PMTEM021_POLOFFR.OFFRG_N", new
> String());
> >
> >
>
> >
>
> > >
> >
> >
> >
>
> > Thomas Fischer
>
> > <[EMAIL PROTECTED]
>
> > u.net>
> To
> > "Apache
> Torque Users List"
>
> > 03/14/2005 10:44
> <[email protected]>
>
> > AM
> cc
> >
>
> >
> Subject
> > Please respond to RE:
> doDelete problem, null dbMap
>
> > "Apache Torque
>
> > Users List"
>
> > <[EMAIL PROTECTED]
>
> > pache.org>
>
> >
>
> >
>
> >
> >
> >
> >
> >
> >
> >
> >
> > Jim,
> >
> > if the db map is not null, but the column is not
> mapped, then I was
> > mistaken about the cause of the error, and
> class.forName() is of no use.
> >
> > Can you look at the map package
> (${target.package}.map), locate the Map
> > class for the Table, and see if it has got an
> entry for the column
> OFFRG_N
> > ?
> >
>
=== message truncated ===
__________________________________
Do you Yahoo!?
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]