JavaFX 2.0 :: WebEngine SetAttribute Is Not Reflected In WebView
Sep 6, 2014
I have a WebView which displays a site. At a specific page I want to fill in some values into <input> elements. So i use such an event handler (browser is of WebView class)
browser.addEventHandler(MouseEvent.MOUSE_CLICKED,
new EventHandler<MouseEvent>(){
public void handle(MouseEvent e) {
Document doc = webEngine.getDocument();
if (doc == null) {
System.out.println("Doc is null");
[Code] ....
The handler sets the "value" but view doesn't reflect that, field is empty.
I've searched everywhere but found no way to disable loading of images by Java WebEngineHow to do it?
Research done:
I found some ideas, such as using URL.setURLStreamHandlerFactory() to use my own URLStreamHandler, and having that analyze the URL to only return URLConnections for URL's that don't end in .jpg .png etc.
But that has many problems: Sometimes the image url doesn't end in .jpg, if it's a dynamic image, such as a captcha. So how can I disable automatic image loading from WebEngine?
Like the title says: I'm loading a local HTML file in a WebView which contains Javascript. The script works without any problem when the page is first loaded, but when I reload it or load another local page, Javascript simply stops working silently for no apparent reason and with no error or exception of any kind.
I'm trying to open URL's that the WebView considers Popups (it triggers the PopupHandler installed through onCreatePopupHandler) in an external In the PopupHandler I return a Webengine on which I installed a StateChanged listene and when the State changes to SCHEDULED I run some code top get the location of the WebEngine and open that URL in an external browser and then cancel the loading of the URL by canceling the LoadWorker using the LoadWorker.cancel() method wrapped in a Platform.runLater(..) call (in order to not crash the JVM).
However, then the PopupHandler is invoked because a window.open(url) was called in JavaScript in the main WebEngine, something odd happens: while the canceling of the loadworker was successful (it returns true and the LoadWorker goes to state CANCELLED), all of a sudden the state goes back to scheduled and my StateListener is called again with a newState of SCHEDULED, to if I don't work around it, the URL is opened again in the external browser. I can work around this by keeping track if the URL was already opened in the external browser once, but from what I can tell, this is just a bug.
I'm using WebView to display an OpenLayers3 map, e.g. Animation example from openlayers.org. When I lock my screen and unlock it, none of the openlayers layers are re-drawn. Sometimes bringing the window in to focus or a small resize of the component will cause the map to go blank. This doesn't occur in any browser I've tested, so it seems to be a WebView specific issue, although it also seems to be layer specific and possibly cache related. I've only tested on Windows, 1.7.0_51 x64 and 1.8.0_05 x64 ....
I get this error when I load a HTML page with WebEngine. The HTML is getting generated by an own (Java-)ServerSocket. How can I figure out where the problem is? I can load the HTML file successfully when loading the(same) generated HTML file from the local filesystem. Maybe the http headers causing these problems ? On the other hand I can load the page without problems in Firefox. How to get more information ?
I would like to reopen the following discussion: Show SVG-Image in WebView (JavaFX 8)
In our IDE (Eclipse Luna) running with jdk1.8.0_25 we load a html page into the webengine. The html page contains <img> tags with '.png' and '.svg' as src. Everything looks fine.
But if we execute the programm with java -jar, the WebEngine doesn't display the svg-files. Instead it shows the 'File not find'-Icon. The .png files still work
The files are definitly included into the jar and will be displayed if we link to them via <a href="someSvg.svg"></a>
Debugging shows the array MediaPrintableArea[] mpa at J2DPrinter:839 is missing its first element, which causes the exception at line 844.
If I execute
service.getSupportedAttributeValues(MediaPrintableArea.class, null, null) instead of
service.getSupportedAttributeValues(MediaPrintableArea.class, null, pras) I get an array with an element on the first position.
The msn object used for the PrintRequestAttributeSet is "iso-a4", which causes the missing first element in the MediaPrintableArea[] array.
So why does this happen? Am I missing some important config stuff? I tried to fix it myself, but I am not able to debug service.getSupportedAttributeValues(...).
I'm building app using Javafx Webview, but I have problems with running any Youtube video in Webview. The strange thing is that rarely it plays ok but more often it shows info "An error occurred, please try again later".
I tried to figure it out, so I made simple app using Youtube iframe API and firebug lite to show where is the problem:
Here is source of Main.java
Here is source of video.html
When I run it on my PC I see the result as below:
Error state 5 means "The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.".
When I run this video.html file in firefox, chrome, or internal eclipse browser, everything is ok and always work.
I use JRE and JDK 1.8.20 but tried also with older versions, Windows 7 64 bit. I've also installed DivX - did not work. I tried on different PC (also win7 64 bit) and asked 2 people with similar config to run this - and it is not working. As far as I know there is everything ok on Mac.
I've run in an issue with connection timeout in the WebView. Requesting the URL in a browser will result in an answer, however it may take some time. Running the same request from the WebView results in a connection timeout.
What is the connection timeout for loading a page through the WebView (from issuing the request webEngine.load(url) to the state change failed passes about 40s). The Request in a browser takes about 10s.
Can I manipulate the underlying connection of the WebView (as suggested at java - How to connect to an HTTPS URL from a JavaFX application - Stack Overflow)
Can I set the connection timeout on the WebEngine/WebKit or per request?Is there an issue targeting this?Likewise I would be interested to get a handle on the connection so I can evaluate the header data to retrieve useful information (like response was a PDF which cannot be rendered in the WebView)....
I can't find an handler or a listener to intercept the 'Save as' window that should pops up when i click on a download link in a webview embedded page.
I am trying to develop a app for facebook and other social networks using webview. When the app is closed all the cookies are removed and when it is relaunched we can't get use of cookies. I want to know how to store cookies permanently and use them when the browser is relaunched. And I also want to know how to save web history permanently.
The problem is from "perspective" in -webkit-transform. Without it's ok. But with this one, the result is different from a standard browser like chrome or safari.
<% request.setAttribute("from", new String("test"));%>
And the I try to send the "from" value to my controller like this:
<p><a href="UserController?action=listNoDeletedFilterdUsers&from=<c:out value="${request.getAttribute('from')}"/>"> Eliminar usuarios por rango de fechas</a></p>
When I press the link and chech the HTML generated it looks like this:
I am developing JavaFX application. I have requirement like that javafx application should be always on top. I could not find an option to make it always on top.
I know that oracle has released a statement saying that JavaFX will eventually replace Swing. What is the advantage of JavaFX? The new format, using "stage" instead of JFrame, seemed weird. Why is this change necessary? What benefit do we reap from JavaFX that Swing does not have?
I am using netbeans scenebuilder and I am a little confused on how I would convert my state capitals java code to a javaFX app.
public class StateCapitals { Scanner in; public static void main(String[] args) { readData(); } public static void readData() { // Location of file to read File file = new File("statecapitals.txt");
I've been on this for a while and for some reason I just can't seem to get this to work. I know my code is solid, but it won't display my image. I've tried swithcing the image to different directories and also using different image sizes and types. I even used Orcale's guide to display your image, but still no go! All I get is a blank canvas? There are no errors. I'm also running NetbeansIDE 8 that supports JavaFX and I made sure the project is a JavaFX Application project.
The homework called for me to display it three times - the first one regular, second resized, and the last one rotated. I even deleted the extra images in hope at least one appears.
I'm working on a project right now in JavaFX, and got stuck. I am drawing a path consisting of CubicCurveTo's and I wonder if there's any way to get the X and Y coordinates from certain parts of that path.
Imagine following a curve (path) with a pencil slowly, and every second you take note the X and Y coordinate. I mean I'm not interested in the control points or start and end points, but the points "in between", preferably at a certain interval.
I've searched for many things online, but have trouble knowing exactly which words to search for. "Paths" often bring up file paths, traversing, coordinates etc. all fail to give me any good results.
I tried to be as specific I could, and I don't think my current code is of any interest in this matter.
(The point of it all is that the path should simulate the path a person walks, and I will store the coordinates in a database for every second).
When i press a button, i want to create a new object in my window(that i have created using scenbuilder, so i have a FXML file and a Controller class). In the window where i have a create button, there are also some textfields where you are supposed to enter name and date.
What i want to do is take the input from the TextField and store is temporally in a String variable, Its this strings i want to take the data from when i create a new object on my View. When i try to do something with the TextFields i get multiple errors that i dont understand at all.
I know my code may be very un-structured the absolute right way, i know, but i dont have time reconstructing and trying to understanding new patterns .The object is the circle and the vertical line.
TimelineMainView Controller public class TimelineController{ StageClass sc = new StageClass(); NewTimelineController nt = new NewTimelineController();
I'm quite new to JavaFX, and currently struggling with navigation between views. I'll post the code and the stacktrace.
public class MainApp extends Application { private Stage primaryStage; private AnchorPane overviewPage; @Override public void start(Stage primaryStage) { this.primaryStage = primaryStage;
[Code] .....
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at javafx.fxml.FXMLLoader$MethodHandler.invoke(Unknown Source) at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(Unknown Source) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
How can I style my own nodes/controls doing this? Basically it amounts to asking how the selectors like ".column-header-background" are associated with sub-structures of my Java control/node objects. So suppose I have something like
.fancy-node .fred .label { ... }
How does JavaFX associate fancy-node and fred with something in my implementation of a Node/Control?