Hi,

The problem is, that no matter the URLStreamHandler, if there is no
scheme - either from the context or the url string - the URL
constructor fails. And this - at least in my case - is the situation
here ...

Regards
Felix

On 1/29/07, Karl Pauls <[EMAIL PROTECTED]> wrote:
Hello,

this is really strange since we do pass in a fake URLHandler but with
an empty context. Maybe that is what causing the trouble. Anyways, I'm
going to remove this asap (it was a temporary placeholder anyways).

regards,

Karl

On 1/29/07, Felix Meschberger <[EMAIL PROTECTED]> wrote:
> Hi,
>
> This seems to have only been introduced lately into  Felix. I use the
> same API call and just put a name there. To fix, I just prepend the
> string "inputstream:" (not a good name after all :-) ), which works.
>
> The API spec just says, the location is "used as the identity of the
> bundle". That is each bundle has  its unique location name. The
> BundleContext.installBundle(String location) spec says, that the
> bundle is retrieved from the named location in a Framework dependent
> manner and that the location string is "typically in the form of a
> URL".
>
> All in all, I can live with the situation of the location string to be
> an URL. On the other hand as the spec does not require it, Felix
> should probably handle the case of a missing scheme name properly when
> creating the code source URL. Perhaps with something like this :
>
>       URL dummy = new URL(null, "location:", fakeHandler); // might by 
Constant
>       URL codeSource = new URL(dummy, locationString, fakeHandler);
>
> Regards
> Felix
>
> On 1/29/07, Chris Custine <[EMAIL PROTECTED]> wrote:
> > Need a little insight from others here...  When installing a bundle from an
> > InputStream using the form:
> >
> > bundleContext.installBundle(String location, InputStream is)
> >
> > does the location String have to be a valid URL string?  I have a couple of
> > scenarios where existing code running on Equinox and Knopflerfish handles
> > this fine, but in Felix we are using that String to create a valid URL
> > object for the CodeSource constructor at Felix.java:2921 so we get a
> > MalformedURLException at SecureAction.java:161
> >
> > I am just trying to figure out if it is pure luck that Equinox and KF work
> > with bogus location Strings (only when installing from InputStream) or if it
> > is something that we need to look at in Felix.  I have run into this twice
> > this week, once with a client's code and once in Spring-OSGi test harness.
> >
> > Chris
> >
> >
>


--
Karl Pauls
[EMAIL PROTECTED]

Reply via email to