Didn't see a JIRA open but thought I'd ask before loading one..
This is r440401....
When I tried using a componentType file along w/ my Java impl I got:
org.apache.tuscany.spi.loader.UnrecognizedElementException: {
http://www.osoa.org/xmlns/sca/1.0}componentType [{
http://www.osoa.org/xmlns/sca/1.0}componentType]
........
at org.apache.tuscany.core.loader.LoaderRegistryImpl.load(
LoaderRegistryImpl.java:113)
at
org.apache.tuscany.core.implementation.java.JavaComponentTypeLoader.l
oadFromSidefile
(JavaComponentTypeLoader.java)
at
org.apache.tuscany.core.implementation.java.JavaComponentTypeLoader.l
oad(
JavaComponentTypeLoader.java:71)
at
org.apache.tuscany.core.implementation.java.JavaComponentTypeLoader.l
oad(
JavaComponentTypeLoader.java:47)
at
org.apache.tuscany.core.loader.LoaderRegistryImpl.loadComponentType(
LoaderRegistryImpl.java:159)
at
org.apache.tuscany.core.implementation.java.JavaImplementationLoader.
load(
JavaImplementationLoader.java:57)
at org.apache.tuscany.core.loader.LoaderRegistryImpl.load(
LoaderRegistryImpl.java:92)
at
org.apache.tuscany.core.loader.ComponentLoader.loadImplementation(
ComponentLoader.java:133)
at org.apache.tuscany.core.loader.ComponentLoader.load(
ComponentLoader.java:84)
at org.apache.tuscany.core.loader.ComponentLoader.load(
ComponentLoader.java:57)
at org.apache.tuscany.core.loader.LoaderRegistryImpl.load(
LoaderRegistryImpl.java:92)
at
org.apache.tuscany.core.implementation.composite.CompositeLoader.load
(CompositeLoader.java:77)
at
org.apache.tuscany.core.implementation.composite.CompositeLoader.load
(CompositeLoader.java:52)
at org.apache.tuscany.core.loader.LoaderRegistryImpl.load(
LoaderRegistryImpl.java:92)
at org.apache.tuscany.core.loader.LoaderRegistryImpl.load(
LoaderRegistryImpl.java:109)
at
org.apache.tuscany.core.implementation.composite.CompositeComponentTy
peLoader.loadFromSidefile
(CompositeComponentTypeLoader.java:64)
at
org.apache.tuscany.core.implementation.composite.CompositeComponentTy
peLoader.load
(CompositeComponentTypeLoader.java:56)
at
org.apache.tuscany.core.implementation.composite.CompositeComponentTy
peLoader.load
(CompositeComponentTypeLoader.java:38)
at
org.apache.tuscany.core.loader.LoaderRegistryImpl.loadComponentType(
LoaderRegistryImpl.java:159)
at org.apache.tuscany.core.deployer.DeployerImpl.load
(DeployerImpl.java
:118)
at org.apache.tuscany.core.deployer.DeployerImpl.deploy(
DeployerImpl.java:93)
at org.apache.tuscany.core.launcher.LauncherImpl.bootApplication(
LauncherImpl.java:193)
The problem wasn't the lack of a loader to load <componentType>
elems.....it
was this line in JavaComponentTypeLoader:
protected PojoComponentType loadFromSidefile(URL url,
DeploymentContext
deploymentContext) throws LoaderException {
return loaderRegistry.load(null, url, PojoComponentType.class,
deploymentContext);
}
This is a problem. In LoaderRegistryImpl.load, we do (line 109):
ModelObject mo = load(parent, reader, ctx);
if (type.isInstance(mo)) {
So we're loading into a ModelObject, (more specifically,
org.apache.tuscany.spi.model.ComponentType), but the 'type' here is :
PojoComponentType.class
which is in pkg org.apache.tuscany.core.implementation.java and
passed into
the load(..) call
Should I open a JIRA for this?
Thanks,
Scott