我一直在尝试使用WebEngine / WebView自动从oracle.com下载JDK发行版,并遇到在其中一个页面处理重定向的问题。问题是,当页面加载时,它不会产生任何我知道的事件。
我使用webEngine.locationProperty()
跟踪发生的重定向,因此当此属性发生更改时,我会注意到重定向正在进行。但是,webEngine.getLoadWorker().stateProperty()
没有改变,而且我没有加载我需要的元素。
我通过启动一个线程来解决这个问题,该线程通过运行jQuery选择器来监视我的特定元素,即webEngine.executeScript("$('#sso_username').length > 0")
。
有没有更好的方法来执行此操作,可能是在重定向后的页面加载时侦听某些属性更改?