Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Equinox » Equinox User(Use of .exsd files)
Equinox User [message #1857222] Wed, 25 January 2023 14:04 Go to next message
Sarah Hall is currently offline Sarah HallFriend
Messages: 2
Registered: January 2023
Junior Member
I am porting a legacy application onto Open Liberty which contains multiple plugin.xml files. I have gotten the equinox extension registry to work and the extensions, extension-points, etc. are being included in the registry. Some of the extension-points reference .exsd files. For example:

<extension-point id="ServiceExtension" name="Service Extension Point"
schema="schema/ExtendedService.exsd"/>

I have tried several things, but have not figured out a way to get the registry to understand the schema. As a result, several of the extensions in the registry are incorrect.

How do I include these files?
Re: Equinox User [message #1857288 is a reply to message #1857222] Sat, 28 January 2023 08:06 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33222
Registered: July 2009
Senior Member
The schema isn't needed at runtime, only at development time. In the platform's projects they generally specify it like this in the build.properties:
bin.includes = plugin.xml,\
               about.html,\
               plugin.properties,\
               .,\
               .options,\
               META-INF/
src.includes = about.html,\
               schema/
source.. = src/

But that kind of surprises me because for EMF I have that folder in my bin.includes.


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Equinox User [message #1857327 is a reply to message #1857288] Mon, 30 January 2023 17:33 Go to previous messageGo to next message
Sarah Hall is currently offline Sarah HallFriend
Messages: 2
Registered: January 2023
Junior Member
Hi Ed, thank you for your response. I am programmatically loading the registry with code something like this:

contributor = new RegistryContributor(contributorId, contributorNamespace, null, null);
this.registry.addContribution(pluginFileStream, contributor, true, contributionName + contributorId,null, null));

This code goes through a list of plugin.xml files which contain extension-points (see my original post) and extensions. Since the registry does not have knowledge of the .exsd files, it cannot process the tags included in some of the extensions.
As a result, the registry gets loaded, but inspection of the extensions shows that the equinox registry code could not find the .exsd files, so it could not properly evaluate the extensions. I need to put the .exsd files somewhere where the equinox
extension registry code can find them. I am not implementing my own extension registry, I am using the non-osgi version as per this forum post: https://www.eclipse.org/forums/index.php/t/29357/

Any thoughts would be appreciated.
Thanks, Sarah
Re: Equinox User [message #1857343 is a reply to message #1857327] Wed, 01 February 2023 08:25 Go to previous message
Ed Merks is currently offline Ed MerksFriend
Messages: 33222
Registered: July 2009
Senior Member
They're normally registered via a relative path in the plugin registering the extension point. But it looks like you are trying to programmatically do the same thing. I don't know that anyone will have a detailed answer to such a thing. E.g., I've never tried to do that...

If I were to try to solve this problem, I would debug how it normally works when a plugin.xml is processed. I.e., set up an IDE for that purpose:

https://www.eclipse.org/setups/installer/?url=https://raw.githubusercontent.com/eclipse-equinox/equinox/master/releng/org.eclipse.equinox.releng/EquinoxConfiguration.setup&show=true


Ed Merks
Professional Support: https://www.macromodeling.com/
Previous Topic:EclipseLogListener Unhandled event loop exception - instance of org/eclipse/osgi/internal/baseadapto
Next Topic:EquinoxClassLoader Monkey Patching
Goto Forum:
  


Current Time: Thu Oct 03 17:27:03 GMT 2024

Powered by FUDForum. Page generated in 0.04045 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top