Registering components under XULRunner 24

Christian Sell <[email protected]> Thu, 13 Feb 2014 09:31:59 -0800 (PST)
Newsgroups gmane.comp.mozilla.devel.embedding
Message-ID <[email protected]>
Hello,

me again ;). We are embedding XULRunner in our Java application, using a thin integration layer written in C++ that provides extended functionality. We also have a XPCOM component written in Javascript, which we previously called though JavaXPCOM, and now need to call from C++. However, no matter what I do, I keep getting a NS_ERROR_FACTORY_NOT_REGISTERED when issuing the following call:

nsCOMPtr<nsIRegionCapture> regionPrinter;
retval = servMan->GetServiceByContractID("@mozilla.org/regioncapture;1", NS_GET_IID(nsIRegionCapture), getter_AddRefs(regionPrinter));

I have tried adding the .js and .xpt files to the xulrunner components subdirectory (which I had to create), added chrome.manifest files pointing to the component, and even tried programmatic registration through

nsIComponentRegistrar> registrar;
retval = NS_GetComponentRegistrar(getter_AddRefs(registrar));
retval = registrar->AutoRegister(file); 

all to no avail. Can someone point out the missing link?

TIA alot!
Christian