0

我正在将现有应用程序转换为 OSGI 并遇到以下问题:

[2015-04-24 15:13:07.575] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    getResource(META-INF/services/com.sun.org.apache.xml.internal.dtm.DTMManager) 
[2015-04-24 15:13:07.637] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      --> Resource not found, returning null 
[2015-04-24 15:13:07.637] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    loadClass(com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault, false) 
[2015-04-24 15:13:07.637] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Searching the application's bundle 
[2015-04-24 15:13:07.637] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Loading class from the delegating classloader 
[2015-04-24 15:13:07.637] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    getResource(META-INF/services/com.sun.org.apache.xml.internal.dtm.DTMManager) 
[2015-04-24 15:13:07.684] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      --> Resource not found, returning null 
[2015-04-24 15:13:07.684] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    loadClass(com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault, false) 
[2015-04-24 15:13:07.684] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Searching the application's bundle 
[2015-04-24 15:13:07.684] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Loading class from the delegating classloader 
[2015-04-24 15:13:07.684] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    getResource(META-INF/services/com.sun.org.apache.xml.internal.dtm.DTMManager) 
[2015-04-24 15:13:07.746] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      --> Resource not found, returning null 
[2015-04-24 15:13:07.746] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    loadClass(com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault, false) 
[2015-04-24 15:13:07.746] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Searching the application's bundle 
[2015-04-24 15:13:07.746] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      Loading class from the delegating classloader 
[2015-04-24 15:13:07.746] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    getResource(META-INF/services/com.sun.org.apache.xml.internal.dtm.DTMManager) 
[2015-04-24 15:13:07.780] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader      --> Resource not found, returning null 
[2015-04-24 15:13:07.781] DEBUG start-signalling-3           o.e.gemini.web.tomcat.internal.loading.BundleWebappClassLoader    loadClass(com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault, false) 

如您所见,它不断地尝试一遍又一遍地加载 DTMManager。我已经解决了日志中的其余错误,这是我看到的最后一件事。我已经尝试了很多方法来加载它,并且从我读过的内容来看,它应该由引导加载程序中的父类加载器根据配置文件加载。我看到了 org.osgi.framework.bootdelegation 的条目,它确实包括这些包:

org.osgi.framework.bootdelegation = \
 org.eclipse.virgo.osgi.extensions.*,\
 org.eclipse.virgo.osgi.launcher.*,\
 org.eclipse.virgo.kernel.authentication,\
 com.sun.*,\
 javax.xml.*,\
 org.apache.xerces.jaxp.*,\
 org.w3c.*,\
 org.xml.*,\
 sun.*

任何帮助都是极好的!

谢谢

4

0 回答 0