[ 
https://issues.apache.org/jira/browse/NETBEANS-5499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Svatopluk Dedic updated NETBEANS-5499:
--------------------------------------
    Fix Version/s: 12.4

> Platform apps cannot connect using HTTP protocol on JDK16
> ---------------------------------------------------------
>
>                 Key: NETBEANS-5499
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-5499
>             Project: NetBeans
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 12.3
>            Reporter: Svatopluk Dedic
>            Assignee: Svatopluk Dedic
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 12.4
>
>          Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> I've found out that my platfom application does not work at all with HTTP 
> protocol when run on JDK 16. The error thrown is:
> {code:java}
> INFO 
> [org.netbeans.modules.autoupdate.updateproviders.AutoupdateCatalogFactory]: 
> Unknown protocol: http
> java.lang.IllegalStateException: Unknown protocol: http
>         at 
> org.apache.felix.framework.URLHandlersStreamHandlerProxy.parseURL(URLHandlersStreamHandlerProxy.java:373)
>         at java.base/java.net.URL.<init>(URL.java:701)
> Caused: java.net.MalformedURLException: Unknown protocol: http
>         at java.base/java.net.URL.<init>(URL.java:706)
>         at java.base/java.net.URL.<init>(URL.java:568)
>         at java.base/java.net.URL.<init>(URL.java:515)
> [catch] at 
> org.netbeans.modules.autoupdate.updateprovider.AutoupdateCatalogFactory.createUpdateProvider(AutoupdateCatalogFactory.java:98)
>         at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
>         at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:567)
>         at 
> org.netbeans.core.startup.layers.BinaryFS$AttrImpl$MethodAndParams.invoke(BinaryFS.java:730)
>         at 
> org.netbeans.core.startup.layers.BinaryFS$AttrImpl.getValue(BinaryFS.java:660)
>         at 
> org.netbeans.core.startup.layers.BinaryFS$BFSBase.getAttribute(BinaryFS.java:506)
> {code}
> No URL with http(s): protocol can be even *parsed*. 
> I managed to isolate the issue - it is caused by *Apache Felix* library 
> included in NB platform that provides 
> {{org.osgi.framework.launch.FrameworkFactory}} token.
> The bug *does not occur* in NetBeans IDE, which has a direct dependency 
> (Needs: declaration) on *org.netbeans.netbinox* module from its *ide.kit* 
> module. In NetBeans, Netbinox loads and installs its URLStreamHandlerFactory 
> ({{org.eclipse.osgi.framework.internal.protocol.StreamHandlerFactory}})
> In a platform app that does not load (need) Netbinox, the Felix library 
> installs its own URLStreamHandleFactory ( 
> {{org.apache.felix.framework.URLHandlers}}), that creates *proxies*. So USHF 
> for http *is* actually created, but it afterwards throws 
> {{MalformedURLException}} on any http: url spec.
> The bug does not occur on earlier JDKs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org
For additional commands, e-mail: commits-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to