[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [equinox-dev] Resource not found inside bundle
|
The problem is: What is the context class
loader of the thread? Did you set one up? OSGi is generally mute on the
subject of context class loaders and does not mess with them.
Since you know that the resource is
visible to your bundle, it would be better to use your class' class loader
to call getResources.
ClassLoader loader = getClass().getClassLoader();
...
Enumeration<URL> urls = loader.getResources("api_mapping.xml");
--
From:
David Cao <govelogo@xxxxxxxxx>
To:
Equinox development
mailing list <equinox-dev@xxxxxxxxxxx>
Date:
2014/07/28 16:51
Subject:
Re: [equinox-dev]
Resource not found inside bundle
Sent by:
equinox-dev-bounces@xxxxxxxxxxx
So I see conflict answers ...
To Raymond, I will give a quick try from the Activator
of your method. Thank!!
To BJ, the code is something like this,
ClassLoader loader = Thread.currentThread().getContextClassLoader();
...
Enumeration<URL> urls = loader.getResources("api_mapping.xml");
...
Do you see a problem? What I am doing here is to convert
an existing web app into OSGi framework via Servlet bridge for Tomcat 6.
The classloading code is from the non-bundle web app ...
thanks a lot!!
On Mon, Jul 28, 2014 at 5:14 PM, BJ Hargrave <hargrave@xxxxxxxxxx>
wrote:
That file does appear to be in the classpath.
The picture shows it in WEB-INF/classes which is in the Bundle-ClassPath.
What does the code look like that is trying to access the file?
--
From: Raymond
Auge <raymond.auge@xxxxxxxxxxx>
To: Equinox
development mailing list <equinox-dev@xxxxxxxxxxx>
Date: 2014/07/28
16:02
Subject: Re:
[equinox-dev] Resource not found inside bundle
Sent by: equinox-dev-bounces@xxxxxxxxxxx
That file is not in the classpath of the bundle and so you can't use the
"resource" API.
However, you can use the "entry" API (which talks about the bundle
rather than about the bundle's classpath).
e.g.
URL url = "">
IF you have a class however, and you need to get to the bundle of the class,
you can do
Bundle bundle = FrameworkUtil.getbundle(this.getClass());
URL url = "">
HTH
On Mon, Jul 28, 2014 at 12:57 PM, David Cao <govelogo@xxxxxxxxx>
wrote:
Hello there,
I have a bundle jar file basically converted from a .war file, with "Bundle-ClassPath"
set as follow,
Bundle-Localization: plugin
Bundle-ClassPath: WEB-INF/classes,
WEB-INF/lib/activation-1.1.jar,
WEB-INF/lib/antlr-2.7.5.jar,
...
Import-Package: javax.servlet,
javax.servlet.http,
org.osgi.framework;version="1.3.0",
org.osgi.service.http;version="1.2.0",
org.osgi.util.tracker;version="1.3.1"
There is an internal class which depends on a "api_mapping.xml"
file which is located under "WEB-INF/classes" (shown below).
However, the class complains unable to find the .xml file.
I wonder if I missed some manifest descriptors for resources? does anyone
have an idea why this is happening? Thanks a lot!!
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/equinox-dev
--
Raymond
Augé (@rotty3000)
Senior Software Architect
Liferay,
Inc. (@Liferay)
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe
from this list, visit
https://dev.eclipse.org/mailman/listinfo/equinox-dev