Thank's Armin and Thomas.
I have added :
ClassHelper.setClassLoader(myClassLoader);
And I get the same result.
Can you tell me how I can enable 'DEBUG' logging status ?
I have set jar-debug in build.xml
I don't use ant ide.
Andre
Armin Waibel wrote:
Hi Andre,
A Leg wrote:
Hi Thomas
I upgrade my machine from CVS this morning.
The class loader problem desappear without having to use setClassLoader.
Thank's for the idea.
But I sill have the following error :
STARTING DBMANAGER !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Starting TaskConsumerDB
Starting TaskConsumerDB try
[BOOT] WARN: Value "org.apache.ojb.odmg.collections.DListImpl_2" is
illegal for key "OqlCollectionClass" (should be a class, using
default value class org.apache.ojb.odmg.collections.DListImpl)
hmm, I think this warning is still caused by a class loader problem,
because the specified class exists in source.
To get more information about repository parsing you should enable
'DEBUG' logging status for
org.apache.ojb.broker.metadata.RepositoryXmlHandler
org.apache.ojb.broker.metadata.ConnectionDescriptorXmlHandler
in the used logging framework.
regards,
Armin
[org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl]
INFO: Create PersistenceBroker instance pool, pool configuration was
{whenExhaustedAction=0, maxIdle=-1, maxActive=100, maxWait=2000,
removeAbandoned=false, numTestsPerEvictionRun=10,
testWhileIdle=false, minEvictableIdleTimeMillis=1000000,
testOnReturn=false, logAbandoned=false, removeAbandonedTimeout=300,
timeBetweenEvictionRunsMillis=-1, testOnBorrow=false}
readDescriptorRepository filename repository.xml
readDescriptorRepository else useSerializedRepository repository.xml
readDescriptorRepository buildRepository repository.xml
[org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: OJB
Descriptor Repository:
file:/home/Absynt/Compiere/mfg_scm/sbin/repository.xml
[org.apache.ojb.broker.metadata.RepositoryPersistor] INFO: Building
repository from :file:/home/Absynt/Compiere/mfg_scm/sbin/repository.xml
readMetadataFromXML SAXParserFactory.newInstance().newSAXParser()
readMetadataFromXML p.getClass().getName()
readMetadataFromXML p.getXMLReader()
readMetadataFromXML reader.getClass().getName().indexOf
readMetadataFromXML reader.setFeature
readMetadataFromXML if DescriptorRepository.class.equals(target)
readMetadataFromXML DescriptorRepository.class.equals(target)
readMetadataFromXML DescriptorRepository
readMetadataFromXML RepositoryXmlHandler
readMetadataFromXML reader.setContentHandler
readMetadataFromXML reader.parse(source)
org.apache.ojb.broker.metadata.MetadataException: Can't read
repository file 'repository.xml'
at org.apache.ojb.broker.metadata.MetadataManager.init(Unknown Source)
at org.apache.ojb.broker.metadata.MetadataManager.<init>(Unknown Source)
at org.apache.ojb.broker.metadata.MetadataManager.getInstance(Unknown
Source)
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryBaseImpl.getDefaultKey(Unknown
Source)
at
org.apache.ojb.broker.core.PersistenceBrokerFactoryBaseImpl.defaultPersistenceBroker(Unknown
Source)
at
org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(Unknown
Source)
at org.compiere.mfg_scm.dbManager.TaskConsumer.<init>(Unknown Source)
at
org.compiere.mfg_scm.dbManager.DbManagerImpl.createTaskConsumer(Unknown
Source)
at
org.compiere.mfg_scm.dbManager.DbManagerImpl.addTaskConsumer(Unknown
Source)
at org.compiere.mfg_scm.dbManager.DbManagerImpl.initialize(Unknown
Source)
Caused by: org.apache.ojb.broker.metadata.MetadataException:
Exception when reading metadata information, please check your
repository.xml file
at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:691)
at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.readMetadataFromXML(Unknown
Source)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.buildRepository(Unknown
Source)
at
org.apache.ojb.broker.metadata.RepositoryPersistor.readDescriptorRepository(Unknown
Source)
... 16 more
I have add some debug to be sure that the problem was not classLoader.
The problem arrive during *reader.parse(source) in readMetadataFromXML*
I first try to get my different repository files good, no result,
then I copy all repository from test.
{orion:rcs} cp
/home/rcs/Master/extern/java/db-ojb/target/srctest/org/apache/ojb/repository*.xml
/home/Absynt/Compiere/mfg_scm/sbin/
{orion:rcs} cp
/home/rcs/Master/extern/java/db-ojb/target/srctest/org/apache/ojb/repository.xml
/home/Absynt/Compiere/mfg_scm/sbin/
And the error did not desappear.
Any idea welcome.
Andre
Thomas Dudziak wrote:
A Leg wrote:
Hi Thomas.
In fact setClassLoader is not usable.
As ClassLoader is used inside the first call to OJB :
PersistenceBrokerFactory.defaultPersistenceBroker();
Which use it to load Configuration and Logger elements.
So when you have conflict between OJB ClassLoader and your
application ClassLoader ....
Hmm, why would that prevent you from using setClassLoader ?
// this should be the very first call
ClassHelper.setClassLoader(myClassLoader);
// because of this call logging and OJB will get initialized (lazy
initialization)
broker = PersistenceBrokerFactory.defaultPersistenceBroker();
Since ClassHelper does not use logging or OJB's properties, there
should be no interference!
Tom
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]