Thanks for the quick response.  The JavaInterfaceIntrospectorExtensionPoint
class is on the classpath.

I have found the problem.  This is caused by TUSCANY-1265.  I thought I
had found a workaround to this, but on looking more closely at the
"shaded" tuscany-sca-all jar that I was picking up, the
  META-INF/services/org.apache.tuscany.sca.core.ModuleActivator
file has incorrect contents and this is causing some of the required
module activator classes to not be called.

I downloaded the latest test distro from Ant's directory and I have
confirmed that my client code does run OK against that.

  Simon

Raymond Feng wrote:

Hi,

Can you check if tuscany-interface-java-runtime is on the classpath? This module contributes the JavaInterfaceIntrospectorExtensionPoint .

Thanks,
Raymond

----- Original Message ----- From: "Simon Nash" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, May 15, 2007 2:15 PM
Subject: JavaInterfaceIntrospectorExtensionPoint is returning null


I'm getting a NullPointerException when running the new sample client for
implementation-crud.

Here's the command I'm using:

E:\tuscany25\sca\samples\implementation-crud-client>java -classpath E:\tuscany25 \sca\samples\implementation-crud-client\target\classes;E:\tuscany25\sca\samples\ implementation-crud\target\sample-implementation-crud.jar;E:\tuscany25\sca\distr ibution\target\tuscany-sca-1.0-incubating-SNAPSHOT.dir\tuscany-sca-1.0-incubatin
g-SNAPSHOT\lib\tuscany-sca-manifest.jar crudClient.CRUDClient

Here's the exception:

Exception in thread "main" org.osoa.sca.ServiceRuntimeException: java.lang.NullPointerException at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230) at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:90)
        at crudClient.CRUDClient.main(CRUDClient.java:32)
Caused by: java.lang.NullPointerException
at org.apache.tuscany.sca.interfacedef.java.introspect.ExtensibleJavaInterfaceIntrospector.<init>(ExtensibleJavaInterfaceIntrospector.java:58) at crud.module.CRUDModuleActivator.start(CRUDModuleActivator.java:68) at org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime.startModules(ReallySmallRuntime.java:135) at org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime.start(ReallySmallRuntime.java:92) at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:86) at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:212)
        ... 2 more

and here's the code in CRUDModuleActivator.java that's passing in null to the ExtensibleJavaInterfaceIntrospector:

    public void start(ExtensionPointRegistry registry) {

ProxyFactory proxyFactory = registry.getExtensionPoint(ProxyFactory.class); InterfaceContractMapper mapper = registry.getExtensionPoint(InterfaceContractMapper.class);
        // Create the CRUD implementation factory
AssemblyFactory assemblyFactory = new RuntimeAssemblyFactory(mapper, proxyFactory);

JavaInterfaceFactory javaFactory = new DefaultJavaInterfaceFactory(); JavaInterfaceIntrospectorExtensionPoint visitors = registry.getExtensionPoint(JavaInterfaceIntrospectorExtensionPoint.class); >>>> JavaInterfaceIntrospector introspector = new >>>> ExtensibleJavaInterfaceIntrospector(javaFactory, visitors);

The null value in "visitors" is being returned from the call to

registry.getExtensionPoint(JavaInterfaceIntrospectorExtensionPoint.class)

What could cause this value to be null?

  Simon



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Simon C Nash   IBM Distinguished Engineer
Hursley Park, Winchester, UK   [EMAIL PROTECTED]
Tel. +44-1962-815156   Fax +44-1962-818999


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to