Hi,
Currently, retrieving
configuration is done in slightly a different way (my fault, I didn’t inform
you):
reference = bundleContext.getServiceReference("org.eclipse.corona.core.resources.IConfigurationManager");
// or better bundleContext.getServiceReference(IConfigurationManager.class.getName());
IConfigurationManager cm = (IConfigurationManager) bundleContext.getService(reference);
IConfigurationFactory cf = cm.getCurrentConfigurationFactory();
I’ve
added IConfigurationManager which holds latest configuration factory (now configuration
directory can be changed in corona’s preferences page), actually it also
informs registered listeners (for now simply PropertyChangeListeners) that
configuration was changed. (PropertyChangeListener should be changed).
Piotr,
Ps. I guess that we should modify the
names like
* IConfigurationFactory à IConfigurationStore
* IConfigurationManager à IConfigurationFactory.
From:
corona-dev-bounces@xxxxxxxxxxx [mailto:corona-dev-bounces@xxxxxxxxxxx] On Behalf Of Everitt, Glenn
Sent: Friday, October 13, 2006
11:13 PM
To: Corona development
Subject: FW: [corona-dev] web
service support addedtoProjectContainerManagerProxy / ProjectContainerManager
I forgot to mention a new project / plugin
needs to be added to your workspace. Please checkout from CVS:
org.eclipse.corona.container.manager.service
From: corona-dev-bounces@xxxxxxxxxxx [mailto:corona-dev-bounces@xxxxxxxxxxx] On Behalf Of Everitt, Glenn
Sent: Friday, October 13, 2006
5:03 PM
To: Corona
development
Subject: [corona-dev] web service
support added toProjectContainerManagerProxy / ProjectContainerManager
I had this working before I attempted to merge code
but….
The merge is not complete I don’t understand why can
find ServiceReference for
org.eclipse.corona.core.resources.IConfigurationFactory is null when I am
starting the SOA_ContainerManager server configuration. Piotr could
you take a look and see what I missed?
In
org.eclipse.corona.container.manager.service.initContainerNameToContainerUriAndContainerUriToContainerManeMaps
returns NULL >>>>> ServiceReference
configurationServiceReference = bundleContext.getServiceReference("org.eclipse.corona.core.resources.IConfigurationFactory");
NULL Pointer exception >>>>Object
configurationService = bundleContext.getService(configurationServiceReference);
Here is the stack
osgi> java.lang.NullPointerException
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:872)
at
org.eclipse.corona.container.manager.service.ContainerManager.initContainerNameToContainerUriAndContainerUriToContainerNameMaps(ContainerManager.java:286)
at
org.eclipse.corona.container.manager.service.ContainerManager.<init>(ContainerManager.java:79)
at
org.eclipse.corona.container.manager.service.ProjectContainerManager.<init>(ProjectContainerManager.java:72)
at org.eclipse.corona.container.manager.service.Activator.deploy(Activator.java:130)
at
org.eclipse.corona.container.manager.service.Activator.serviceChanged(Activator.java:155)
at
org.eclipse.osgi.framework.internal.core.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:71)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:1216)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:189)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:141)
at
org.eclipse.osgi.framework.internal.core.Framework.publishServiceEventPrivileged(Framework.java:1526)
at
org.eclipse.osgi.framework.internal.core.Framework.publishServiceEvent(Framework.java:1501)
at
org.eclipse.osgi.framework.internal.core.ServiceRegistrationImpl.<init>(ServiceRegistrationImpl.java:103)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.createServiceRegistration(BundleContextImpl.java:649)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:601)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:667)
The plugin org.eclipse.corona.container.config does show as
active
initial@reference:file:../../Dev/Corona_1.0.0_M5/org.eclipse.corona.container.config/
[24]
I’m sure
the startup sequence is different now that the some plugins are started in a
client process and some plugins are started in the server process.
Notes about the new remote support added to
ProjectContainerManagerProxy / ProjectContainerManager
*New launch / debug configurations have been committed to
CVS: SOA_ContainerManager.launch and SOA_ContainerClient.launch
*wsdl4j –get from internal CVS or create using create
plugin from jar wsdl4j-1.5.2.jar (waiting on IP approval)
*If you have a project named: org.apache.tuscany.sdo
remove it or close the project project
*NoTeamRespositoryException moved into org.eclipse.corona
project in org.eclipse.corona.management.common package
This class needs to be in a plugin that is accessable by
both the client and server side code. I put it here until we can figure
out where to put it
*I do not know if NoTeamRepositoryException working on
the server side – I think the server side can not find the class this
still needs some clean up.
*org.eclipse.corona.container.manager now uses generics to
specify objects contained within collection classes that are returned via
webservice calles (so requires JDK 5)
*The IProjectContainerManager must explicitly define all of
the methods in its interface for them to be exposed as a web service even those
it inherits and are already defined in IContainerManager. This restriction
is by design. It allows the writer of the interface to explicitly define
what methods will be exposed.
Glenn Everitt
The contents of this e-mail are intended for the named addressee only.
It contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose it
to anyone else. If you received it in error please notify us immediately and
then destroy it.
The contents of this e-mail are intended for the named addressee only.
It contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose it
to anyone else. If you received it in error please notify us immediately and
then destroy it.
The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.