-
Bug
-
Resolution: Unresolved
-
P4
-
jfx15
-
os_x
ADDITIONAL SYSTEM INFORMATION :
My configuration: MacOS 13.0.1 (Ventura); IntelliJ Community Edition 2021.2; JDK 15.0.2; JavaFX 15.0.1+1
(Sharing this problem on StackOverflow, another user reported the same problem with: OS X (intel) 13.0.1; JavaFX 19; OpenJDK 19.0.1)
I've been using the same JDK and JavaFX versions for months without this problem. I recently upgraded to Ventura; the problem did not occur before then. Is the error on account of upgrading to Ventura? I don't know.
A DESCRIPTION OF THE PROBLEM :
Displaying a dialog box causes multiple errors to be displayed: "Error: <date> <time> java[1066:41315] +[CATransaction synchronize] called within transaction"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create a JavaFX project with the code shown below in 'Source code for an executable test case'
Build
Run the program from within IntelliJ, and click on the 'Process File' button. A FileChooser dialog will be displayed, and multiple error messages shown at the console.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The dialog should be displayed, but with no error messages in the console.
ACTUAL -
The dialog is displayed, but this text is displayed in red in the console.
2022-12-29 07:07:14.900 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.927 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.980 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.993 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.010 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.027 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.045 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.060 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.077 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.094 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.110 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.128 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.142 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.160 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.208 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:17.535 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:48.991 java[1135:46462] +[CATransaction synchronize] called within transaction
---------- BEGIN SOURCE ----------
Code used:
=========
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import java.io.*;
public class Main extends Application {
// ..................... and now it's time for the main routine .....................
@Override
public void start(Stage primaryStage) {
// we need a FileChooser
FileChooser myChooser = new FileChooser();
// set up a controlled exit
primaryStage.setOnCloseRequest(e -> {
e.consume();
primaryStage.close();
});
// define the main scene's building blocks
VBox root = new VBox(5); // the spacing is between each element in the VBox
Scene mainScene = new Scene(root, 650, 300);
// just one button in the scene
Button websiteSupportButton = new Button("Process file");
websiteSupportButton.setMinWidth(150);
root.getChildren().add(websiteSupportButton);
websiteSupportButton.setOnAction(e -> processFiles(primaryStage, myChooser));
// and now we're ready to associate the root Scene with the primary stage, and show it
primaryStage.setX(20);
primaryStage.setY(20);
primaryStage.setScene(mainScene);
primaryStage.setTitle("Error test");
primaryStage.show();
}
// .................................. tool scenes ..................................
// select an input file.
private static void processFiles(Stage myStage, FileChooser myChooser) {
File inputFile;
// need to select an input file - displaying this dialog causes multiple "java[1334:69043] +[CATransaction synchronize] called within transaction" messages
inputFile = myChooser.showOpenDialog(myStage);
if (inputFile != null) {
System.out.println(" file processed");
}
}
// .......................................... standard stuff ..........................................
public static void main(String[] args) {
launch(args);
}
}
---------- END SOURCE ----------
FREQUENCY : always
My configuration: MacOS 13.0.1 (Ventura); IntelliJ Community Edition 2021.2; JDK 15.0.2; JavaFX 15.0.1+1
(Sharing this problem on StackOverflow, another user reported the same problem with: OS X (intel) 13.0.1; JavaFX 19; OpenJDK 19.0.1)
I've been using the same JDK and JavaFX versions for months without this problem. I recently upgraded to Ventura; the problem did not occur before then. Is the error on account of upgrading to Ventura? I don't know.
A DESCRIPTION OF THE PROBLEM :
Displaying a dialog box causes multiple errors to be displayed: "Error: <date> <time> java[1066:41315] +[CATransaction synchronize] called within transaction"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create a JavaFX project with the code shown below in 'Source code for an executable test case'
Build
Run the program from within IntelliJ, and click on the 'Process File' button. A FileChooser dialog will be displayed, and multiple error messages shown at the console.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The dialog should be displayed, but with no error messages in the console.
ACTUAL -
The dialog is displayed, but this text is displayed in red in the console.
2022-12-29 07:07:14.900 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.927 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.980 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:14.993 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.010 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.027 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.045 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.060 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.077 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.094 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.110 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.128 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.142 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.160 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:15.208 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:17.535 java[1135:46462] +[CATransaction synchronize] called within transaction
2022-12-29 07:07:48.991 java[1135:46462] +[CATransaction synchronize] called within transaction
---------- BEGIN SOURCE ----------
Code used:
=========
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import java.io.*;
public class Main extends Application {
// ..................... and now it's time for the main routine .....................
@Override
public void start(Stage primaryStage) {
// we need a FileChooser
FileChooser myChooser = new FileChooser();
// set up a controlled exit
primaryStage.setOnCloseRequest(e -> {
e.consume();
primaryStage.close();
});
// define the main scene's building blocks
VBox root = new VBox(5); // the spacing is between each element in the VBox
Scene mainScene = new Scene(root, 650, 300);
// just one button in the scene
Button websiteSupportButton = new Button("Process file");
websiteSupportButton.setMinWidth(150);
root.getChildren().add(websiteSupportButton);
websiteSupportButton.setOnAction(e -> processFiles(primaryStage, myChooser));
// and now we're ready to associate the root Scene with the primary stage, and show it
primaryStage.setX(20);
primaryStage.setY(20);
primaryStage.setScene(mainScene);
primaryStage.setTitle("Error test");
primaryStage.show();
}
// .................................. tool scenes ..................................
// select an input file.
private static void processFiles(Stage myStage, FileChooser myChooser) {
File inputFile;
// need to select an input file - displaying this dialog causes multiple "java[1334:69043] +[CATransaction synchronize] called within transaction" messages
inputFile = myChooser.showOpenDialog(myStage);
if (inputFile != null) {
System.out.println(" file processed");
}
}
// .......................................... standard stuff ..........................................
public static void main(String[] args) {
launch(args);
}
}
---------- END SOURCE ----------
FREQUENCY : always