You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Jan van Oosterom (JIRA)" <ji...@apache.org> on 2011/03/02 09:31:37 UTC

[jira] Issue Comment Edited: (FELIX-2780) Extension bundle implementation relies on urlhandlers service to start extension bundles

    [ https://issues.apache.org/jira/browse/FELIX-2780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13001330#comment-13001330 ] 

Jan van Oosterom edited comment on FELIX-2780 at 3/2/11 8:29 AM:
-----------------------------------------------------------------

this snippet of code seem so be the source of the problem
why is this an illegal URL?

class ExtensionManager extends URLStreamHandler implements Content
{
    // The private instance that is added to Felix.class.getClassLoader() -
    // will be null if extension bundles are not supported (i.e., we are not
    // loaded by an instance of URLClassLoader)
    static final ExtensionManager m_extensionManager;

    static
    {
        // pre-init the url sub-system as otherwise we don't work on gnu/classpath
        ExtensionManager extensionManager = new ExtensionManager();
        try
        {
            (new URL("http://felix.extensions:9/")).openConnection();
        }
        catch (Throwable t)

<edit, fix typo>

      was (Author: jvanoosterom):
    this snippet of code seem so be the source of the problem
why is this a illegal URL?

class ExtensionManager extends URLStreamHandler implements Content
{
    // The private instance that is added to Felix.class.getClassLoader() -
    // will be null if extension bundles are not supported (i.e., we are not
    // loaded by an instance of URLClassLoader)
    static final ExtensionManager m_extensionManager;

    static
    {
        // pre-init the url sub-system as otherwise we don't work on gnu/classpath
        ExtensionManager extensionManager = new ExtensionManager();
        try
        {
            (new URL("http://felix.extensions:9/")).openConnection();
        }
        catch (Throwable t)
  
> Extension bundle implementation relies on urlhandlers  service to start extension bundles
> -----------------------------------------------------------------------------------------
>
>                 Key: FELIX-2780
>                 URL: https://issues.apache.org/jira/browse/FELIX-2780
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: framework-3.0.7
>         Environment: Host: Ubuntu Linux
> JVM:  JAMVM-1.5.4 (patched - see attached patches in Bug 2775)
> Library: GNU Classpath 0.98 (patched - see attached patches in Bug 2775)
> felix framework - 3.0.7 or 3.1.0-SNAPSHOT 
> framework.security -  1.4.1 or 1.5.0-SNAPSHOT
> Other bundles that are being auto-deployed deployed:
> -rw-r--r-- 1 root  root  150520 2010-12-26 13:33 org.apache.felix.bundlerepository-1.6.2.jar
> -rw-r--r-- 1 root  root   90013 2011-01-10 20:06 org.apache.felix.framework.security-1.5.0-SNAPSHOT.jar
> -rw-r--r-- 1 samba samba  62727 2011-01-13 12:34 org.apache.felix.shell-1.4.2.jar
> -rw-r--r-- 1 samba samba  12748 2011-01-13 12:34 org.apache.felix.shell.tui-1.4.1.jar
>            Reporter: Samba
>            Assignee: Karl Pauls
>            Priority: Minor
>
> I am trying to start the felix security framework extension bundle with the urlhandler service  disabled in the Felix framework.
> COMMAND:
> ======
> /usr/local/jamvm/bin/jamvm -Xmx256M -Dfelix.service.urlhandlers=false -Dorg.osgi.framework.security="osgi" -Dpolicy.provider=gnu.java.security.PolicyFile -Djava.security.policy=file:///home/samba/wurk/downloads/osgi/felix-framework-3.0.7/conf/java.policy   -jar bin/felix.jar
> Policy file:
> ========
> grant {
>  permission java.security.AllPermission;
> }
> grant codeBase "http://felix.extensions:9/" {
>  permission java.security.AllPermission;
> };
> I get the following error and the security framework does not start
> WARNING: Unable to start Felix Extension Activator (java.nio.channels.UnresolvedAddressException)
> Stack trace where the exception occurs
>   at java.lang.Thread.dumpStack(Thread.java:522)
>    at java.nio.channels.UnresolvedAddressException.<init>(UnresolvedAddressException.java:55)
>    at gnu.java.nio.SocketChannelImpl.connect(SocketChannelImpl.java:160)
>    at gnu.java.net.PlainSocketImpl.connect(PlainSocketImpl.java:281)
>    at java.net.Socket.connect(Socket.java:454)
>    at java.net.Socket.connect(Socket.java:414)
>    at gnu.java.net.protocol.http.HTTPConnection.getSocket(HTTPConnection.java:721)
>    at gnu.java.net.protocol.http.HTTPConnection.getOutputStream(HTTPConnection.java:802)
>    at gnu.java.net.protocol.http.Request.dispatch(Request.java:292)
>    at gnu.java.net.protocol.http.HTTPURLConnection.connect(HTTPURLConnection.java:219)
>    at gnu.java.net.protocol.http.HTTPURLConnection.getHeaderField(HTTPURLConnection.java:582)
>    at java.net.URLConnection.getHeaderFieldInt(URLConnection.java:426)
>    at java.net.URLConnection.getContentLength(URLConnection.java:302)
>    at gnu.java.net.loader.RemoteURLLoader.getResource(RemoteURLLoader.java:79)
>    at java.net.URLClassLoader.findClass(URLClassLoader.java:528)
>    at java.lang.ClassLoader.loadClass(ClassLoader.java:341)
>    at java.lang.ClassLoader$1.loadClass(ClassLoader.java:1112)
>    at java.lang.ClassLoader.loadClass(ClassLoader.java:293)
>    at org.apache.felix.framework.ExtensionManager.startExtensionBundle(ExtensionManager.java:381)
>    at org.apache.felix.framework.Felix.installBundle(Felix.java:2610)
>    at org.apache.felix.framework.Felix.installBundle(Felix.java:2429)
>    at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:121)
>    at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:107)
>    at org.apache.felix.main.AutoProcessor.processAutoDeploy(AutoProcessor.java:173)
>    at org.apache.felix.main.AutoProcessor.process(AutoProcessor.java:78)
>    at org.apache.felix.main.Main.main(Main.java:291)
>    at java.lang.reflect.VMMethod.invoke(Native Method)
>    at java.lang.reflect.Method.invoke(Method.java:327)
>    at jamvm.java.lang.JarLauncher.main(JarLauncher.java:50)

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira