JavaFX webapp navigation interception & downloads
matthieu at brouillard.fr
Fri Sep 19 13:18:31 UTC 2014
In the context of embedding/wrapping existing web applications in a Java
client, I am facing some issues especially in regard of navigation
interception & file download.
My first use case was to be able to navigate to PDFs exposed by a web
First I did not found a convenient API in JavaFX to register a kind of
Then, I found that some people were monitoring webengine.location property.
This solution is very simple to setup but it fails when you want to
intercept several navigations to the same item.
Finally, I ended in investigating & demoing a way of doing it by using
I pushed my demo app to github: https://github.com/McFoggy/fxnav-interceptor
What I do is:
- loading the webapp
- from java, inject java bridges to this JS lib
- from JS, monitor the DOM
- on JS DOM modification, java bridges are called and install
'ClickListener' instances on appropriate JS DOM nodes (anchors in the
- when user click links, JS events are fired, handled by Java bridges, that
can then download the target of the link and consume the JS event
Do you think of easier way of doing this:
- in the current JavaFX version (8u20)?
- in future versions?
Several tickets are already opened
https://javafx-jira.kenai.com/browse/RT-36498, but I did not found any
target version for them, any info?
Thanks for feedback & keep on going with the great stuff you already
More information about the openjfx-dev