WebEngine.getDocument
rendimenti org.w3c.dom.Document
, non dei documenti JavaScript che ci si aspetta a giudicare dal codice.
Sfortunatamente, la stampa di org.w3c.dom.Document
richiede un bel po 'di codifica. Puoi provare la soluzione dal What is the shortest way to pretty print a org.w3c.dom.Document to stdout?, vedi il codice qui sotto.
Nota che è necessario attendere il caricamento del documento prima di utilizzare Document
. Questo è il motivo per cui LoadWorker
è usato qui:
public void start(Stage primaryStage) {
WebView webview = new WebView();
final WebEngine webengine = webview.getEngine();
webengine.getLoadWorker().stateProperty().addListener(
new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
if (newState == Worker.State.SUCCEEDED) {
Document doc = webengine.getDocument();
try {
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
transformer.transform(new DOMSource(doc),
new StreamResult(new OutputStreamWriter(System.out, "UTF-8")));
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
});
webengine.load("http://stackoverflow.com");
primaryStage.setScene(new Scene(webview, 800, 800));
primaryStage.show();
}
fonte
2013-01-11 18:13:08
vostro metodo sarà recuperare il contenuto mancante se il sito contiene errori html ex: Sono molto preoccupato su questo argomento se si dispone di una correzione per favore per favore aiutare –