Open bendem opened 5 years ago
This is even worse. There should be an error dialog which is not shown.
The exception is thrown by FXMLLoader
as it fails to handle the <fx:reference source="controller"/>
.
Before making any step further, I need to find out, why the error dialog does not appear.
@abhinayagarwal
What is the way SceneBuilder should work? If the controller class as defined in fx:controller
property does not exist in class path or module path, this is supposed to fail. Should there be a way for users to extend the class path for FXML loading?
Otherwise, one approach would be to ignore the user data elements on existing FXMLs for FXML loading. This would be possible by extending the functionality of PR #405 accordingly.
With #405, we could remove most likely not-working content from FXML before passing the FXML into the FXMLLoader but without removing the nodes from the FXOM so the data is not lost for the user.
Hello @bendem! Would it be okay to just ignore this kind of user data in your case?
Yes, that's the point of userData in my opinion, provide something dynamic to a static view. There is no way scenebuilder could ever resolve that symbol.
Ignoring the user data elements sounds like the correct approach. I can't think of a scenario where Scene Builder would need to use the data and process something.
Still broken, any workarounds/fixes?
Still broken, any workarounds/fixes?
no
...
@jaymehta-g I will look into this as. There are other FXML/FXOM related issues around and I had to learn how this works internally. There won't be a fix for Scene Builder 20 but I'll give you a ping as soon as there is something to test. Thanks for the reminder.
@AlmasB Could you please assign this one to me?
Related issues:
I have the file
I have to remove the
<userData>
tag, before opening the file, otherwise I getadding the tag back after the file is opened causes the same exception but that doesn't prevent the editor from working.