我对Java和JavaFX很陌生,因此我觉得我有点超出了我的深度。
我现在有一个基本应用程序,其中包含两个WebView view1
和view2
,每个都使用单独的WebEngine engine1
和engine2
。我希望通过使用不同的WebEngine,我会在它们之间进行单独的会话,而不是共享。
简单地说,我想在一个窗口中使用两个不同的帐户登录同一个域。
我与java.net.CookieManager
和java.net.CookieHandler
进行了一场比赛,但我并不认为我会用那些咆哮着正确的树。
据我所知,在JavaFX文档中,我似乎可以找到像Awesomium / Visual Studio这样的工具中的任何类型的Web会话提供程序/处理程序。我希望有人可以告诉我正确的地方寻找这样的课程或者可能帮助我做一个。
应用程序代码如下,非常感谢所有帮助
public void start(Stage primaryStage) {
//Create a GridPane for browser panes
GridPane browserGrid = new GridPane();
browserGrid.setGridLinesVisible(true);
browserGrid.setPrefSize(primaryStage.getWidth(), primaryStage.getHeight());
browserGrid.setHgap(10);
browserGrid.setVgap(10);
browserGrid.setPadding(new Insets(0, 10, 0, 10));
java.net.CookieManager manager1 = new java.net.CookieManager();
java.net.CookieHandler.setDefault(manager1);
WebView view1 = new WebView();
WebEngine engine1 = view1.getEngine();
WebView view2 = new WebView();
WebEngine engine2 = view2.getEngine();
engine1.load("https://www.facebook.com");
engine2.load("https://www.facebook.com");
browserGrid.add(view1, 0, 1);
browserGrid.add(view2, 1, 1);
//playerGrid.setGridLinesVisible(true);
Scene scene = new Scene(browserGrid, 1600, 800);
primaryStage.setTitle("MultiPane Browser");
primaryStage.setScene(scene);
primaryStage.show();
}
只是使用Facebook作为默认网站登录以进行测试