You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When trying to add Elemental as a data source in OxygenXML it will throw this error
Check datasource configuration. Could not instantiate: ro.sync.db.nxd.exist.ExistSession due to:
java.lang.NoClassDefFoundError: xyz/elemental/mediatype/MediaType
steps to reproduce
From a clean instance of Elemental 7.x.x and fresh install of OxygenXML eg 28.1
Add Elemental as data source and apply it.
In the Data Source Explorer you will see the error show up when you try to navigate in the DB.
changed the title [-][BUG] Unable to connect to OxygenXML `java.lang.NoClassDefFoundError: xyz/elemental/mediatype/MediaType`[/-][+][BUG] Unable to connect to OxygenXML[/+]on May 19, 2026
After #215 there is still an issue whereby oXygen is trying to use the XML:DB API v1 which is also the version used in Elemental 6.x.x, but with Elemental 7.x.x we require the XML:DB API v2.
The XML:DB jar is deployed to oXygen by Elemental when the database connection is first established, but it looks like oXygen was coded against the XML:DB v1 API, which is why we now get this stacktrace in oXygen when connecting to Elemental 7.x.x:
java.lang.NoSuchMethodError: 'org.xmldb.api.base.Service org.xmldb.api.base.Collection.getService(java.lang.String, java.lang.String)'
java.lang.NoSuchMethodError: 'org.xmldb.api.base.Service org.xmldb.api.base.Collection.getService(java.lang.String, java.lang.String)'
at ro.sync.db.nxd.exist.k.yi(Unknown Source)
at ro.sync.exml.editor.x.db$36.b(Unknown Source)
at ro.sync.db.nxd.b.zj(Unknown Source)
FYI I made changes in the Oxygen Exist connector for the upcoming (Autumn) 29 version to take into account the Collection.getService API change (and also be backwards compatible).
I also made changes to support the fact that mimeType.getXMLDBType now returns Object instead of String
And existResource.getLastModificationTime now seems to return Instance instead of Date.
I also had to manually add the libraries fastutil-8.5.18.jar and jline-3.30.6.jar to the set of libraries downloaded automatically by Oxygen's Exist connector by looking in the eXist.jnlp.
I did not find any other problems testing various Oxygen Exist actions (open, copy, rename, move) but there may be.
In Oxygen 29 we plan to mark the eXist connector in Oxygen as deprecated, not signaling that we plan to remove it but that we do not actively work on it and that third parties can also come up with a plugin for Oxygen to Exist connection.
Activity
[-][BUG] Unable to connect to OxygenXML `java.lang.NoClassDefFoundError: xyz/elemental/mediatype/MediaType`[/-][+][BUG] Unable to connect to OxygenXML[/+]adamretter commentedon Jun 2, 2026
After #215 there is still an issue whereby oXygen is trying to use the XML:DB API v1 which is also the version used in Elemental 6.x.x, but with Elemental 7.x.x we require the XML:DB API v2.
The XML:DB jar is deployed to oXygen by Elemental when the database connection is first established, but it looks like oXygen was coded against the XML:DB v1 API, which is why we now get this stacktrace in oXygen when connecting to Elemental 7.x.x:
CC @raducoravu
raducoravu commentedon Jun 19, 2026
FYI I made changes in the Oxygen Exist connector for the upcoming (Autumn) 29 version to take into account the Collection.getService API change (and also be backwards compatible).
I also made changes to support the fact that mimeType.getXMLDBType now returns Object instead of String
And existResource.getLastModificationTime now seems to return Instance instead of Date.
I also had to manually add the libraries fastutil-8.5.18.jar and jline-3.30.6.jar to the set of libraries downloaded automatically by Oxygen's Exist connector by looking in the eXist.jnlp.
I did not find any other problems testing various Oxygen Exist actions (open, copy, rename, move) but there may be.
In Oxygen 29 we plan to mark the eXist connector in Oxygen as deprecated, not signaling that we plan to remove it but that we do not actively work on it and that third parties can also come up with a plugin for Oxygen to Exist connection.