Hi Martin,
I prepared the structure a bit:
https://github.com/apache/wicket/commit/eb730f2979dab6c937e87cefbbe84167cc5546e1
- wicket-experimental
--- wicket-http2
------ wicket-http2-core
------ wicket-http2-jetty
------ wicket-http2-tomcat
* -core is providing the basic header item and make use of the IInitializers
* -jetty, -tomcat, etc. are the implementations for the servers (I would
suggest to use the maven dependencies but set them to provided so that
there is no conflict within the running server.)
Branch: "WICKET-6194"
If you check it out there will be a compile error because of the line
which is going to use the IInitializers callback to make use of the
vendor specific PushBuilder API.
https://github.com/apache/wicket/blob/eb730f2979dab6c937e87cefbbe84167cc5546e1/wicket-experimental/wicket-http2/wicket-http2-core/src/main/java/org/apache/wicket/http2/markup/head/PushHeaderItem.java#L77
Can you give me a hint how to implement the IInitializers?
kind regards
Tobias
Am 30.06.16 um 09:40 schrieb Martin Grigorov:
I can add the Tomcat impl and docs how to setup Tomcat 8.5+ with HTTP2.
Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov
On Wed, Jun 29, 2016 at 6:27 PM, Tobias Soloschenko <
[email protected]> wrote:
Jep - would be great until the servlet 4 API reaches the final state.
I already reduced the usage of the container specific calls to one line.
This line can be delegated to the IInitialzer class.
I hope tomcat and other servers are implementing the PushBuilder API
similar. If yes it is rather easy to create such an integration.
kind regards
Tobias
Am 29.06.2016 um 17:41 schrieb Martin Grigorov <[email protected]>:
Hi,
What do you think about introducing PushBuilder-like API in Wicket-core ?
The default implementation wil justl log warnings.
If an application wants to make use of this new functionality then it
will
have to add an additional jar to the classpath, e.g.
wicketstuff-pushbuilder-jetty9.jar, that will replace the default
strategy
(with IInitializer) with one that knows how to use Jetty9 internals. Same
for Tomcat 8.5+ and any other container that provides this functionality
with internal APIs.
Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov
On Tue, Jun 28, 2016 at 11:08 PM, Tobias Soloschenko <
[email protected]> wrote:
Hi,
just a small update:
I switched the implementation to servlet-4.0.0-b01 API as far as
possible:
https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api/4.0.0-b01
The only thing I can do now is to wait for the JEE standard to be
finalized and to be implemented into the servers like jetty, tomcat,
etc.
https://github.com/klopfdreh/jetty-http2-example
kind regards
Tobias
Am 12.05.2016 um 18:15 schrieb Maxim Solodovnik <[email protected]
:
Cool!
On Thu, May 12, 2016 at 10:10 PM, Tobias Soloschenko <
[email protected]> wrote:
Hi,
I just managed to finish a PoC in which Apache Wicket runs on Jetty
with
http/2 and uses the Servlet 4.0 Spec / PushBuilder to provide
resources
to
the client.
Notes:
* Small API which can be added to increase the performance of the
webapp
with http/2
* No html changes required
References:
*
https://raw.githubusercontent.com/klopfdreh/jetty-http2-example/master/without_push.png
*
https://raw.githubusercontent.com/klopfdreh/jetty-http2-example/master/with_push.png
On localhost improved performance: 37ms latency without and 1ms
latency
to
serve the resource (CSS file)
Example Implementation:
*
https://github.com/klopfdreh/jetty-http2-example/blob/master/de.jetty.wicket.http2.example/src/main/java/de/jetty/wicket/http2/example/HTTP2Page.java#L28
Jetty Setup:
*
https://github.com/klopfdreh/jetty-http2-example/blob/master/de.jetty.wicket.http2.example/src/test/java/de/jetty/wicket/http2/example/Runner.java
hooray!
WDYT
kind regards
Tobias
--
WBR
Maxim aka solomax