On Tue, 14 Sep 2021 08:52:37 GMT, Julia Boes <jb...@openjdk.org> wrote:

> This change implements a simple web server that can be run on the 
> command-line with `java -m jdk.httpserver`.
> 
> This is facilitated by adding an entry point for the `jdk.httpserver` module, 
> an implementation class whose main method is run when the above command is 
> executed. This is the first such module entry point in the JDK.
> 
> The server is a minimal HTTP server that serves the static files of a given 
> directory, similar to existing alternatives on other platforms and convenient 
> for testing, development, and debugging.
> 
> Additionally, a small API is introduced for programmatic creation and 
> customization.
> 
> Testing: tier1-3.

src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java line 288:

> 286:     }
> 287: 
> 288:     private static final Headers EMPTY = new UnmodifiableHeaders(new 
> Headers());

IDEA warns here:
>Referencing subclass UnmodifiableHeaders from superclass Headers initializer 
>might lead to class loading deadlock
>Such references can cause JVM-level deadlocks in multithreaded environment, 
>when one thread tries to load the superclass and another thread tries to load 
>the subclass at the same time.

-------------

PR: https://git.openjdk.java.net/jdk/pull/5505

Reply via email to