Most ICE Items are being persisted as empty .xml files. Only the Mesh Editor, PROTEUS Model, and SHARP Model can be persisted to xml and back correctly. The Nek5000 Launcher is also creating a non-empty xml file, but it is not valid.
Designs
Child items
...
Show closed items
Linked items
0
Link issues together to show that they're related or that one is blocking others.
Learn more.
This works perfectly for me. See attached screenshot.
The XML editor shows the file on the left and the ICE editor shows the file on the right. This picture was taken after restarting ICE twice.
I am running this on my Fedora 24 box from the launch configuration for 2.2.1. @SmithRWORNL, please let me know what version of ICE you are running and what OS you are using.
I tested on Windows, using 20161110 and locally built executables, and @amccaskey , who first alerted me to the problem for VIBE Models, tested it on Mac, all to the same result. One of the problems is specific to the build, in that it effects only the built executable and not run configurations. o.e.i.persistence.xml was missing from the product, but adding it didn't fix the problem.
Check out the Robert/Persistence branch for a couple of issues I did fix. The only problem I don't know how to solve in run configuration launched ICE now is that persisted Reflectivity Models will get an EclipseFormWidget instead of a ReflectivityEclipseFormWidget when unmarshaled. There is a workaround in that you can open the xml file, close the editor, open the ICE perspective, and open the Reflectivity Model in the Item Viewer to get a properly initialized form.
Also, please state clearly what you fixed and didn't fix in Robert/Persistence. We need a clear record of what broke and preferably commits that mention this ticket number. We also need to know what remains.
o.e.i.p.xml does not need to be in the product. At this point only a few things do need to be there and we actually have more in there than we need.
If the only remaining bug is that reflectivity thing, then that is a separate issue and we can close this one after a little more testing.
I fixed a problem with VibeModel where a new transient variable had been added without having been given a JAXB annotation and a problem with ExecutableEntities that was causing Components including them to be improperly copied from the unmarshaled object to the instance being opened. These mean that the Reflectivity Model problem is the only persistence issue I'm still getting when run through a launch configuration.
However the problems with the ICE executable remain, and I'm still getting empty xml files for it.
@SmithRWORNL What changes did you make to the data structures bundle, if any? Keep in mind that we are switching to January and will have to port those changes. Please open a ticket to port any changes you made.
See my commit note for information on how I fixed this. @SmithRWORNL will you please verify it for me please?
There were a couple of minor changes that will need to be ported to January, namely fixing the extension point schema and fixing build.properties. We can address those when we do the full migration.
@jayjaybillings The only change to the datastructures bundle I made was to add clone and copy operations to ExecutableEntry, as seen in commit 2cd5dea5.
I've opened a bug, eclipse/january#25, to track migration of these changes into January.
I tested the new executable, and persistence is working except for the Reflectivity Model, in which the NatTable is empty.