Hi, Jim.

Your changes seem to be causing some regressions. I got the following exception in a web srevice sample now.

Thread [main] (Suspended (exception NullPointerException))
DefaultRuntime(CompositeComponentExtension).resolveSystemInstance(Class<T>) line: 390
CompositeComponentImpl(CompositeComponentExtension).resolveSystemInstance(Class<T>)line: 390 CompositeComponentImpl(CompositeComponentExtension).resolveSystemInstance(Class<T>) line: 390 
CompositeComponentImpl(CompositeComponentExtension).resolveSystemInstance(Class<T>) line: 390 SystemOutboundAutowire.getTargetService() line: 84 SystemWireObjectFactory.getInstance() line: 40 
MethodInjector<T>.inject(T) line: 46 SystemAtomicComponentImpl(PojoAtomicComponent).createInstance() line: 123 ModuleScopeContainer.eagerInitComponents() line: 144 
ModuleScopeContainer.onEvent(Event) line: 72 CompositeComponentImpl(AbstractSCAObject).publish(Event) line: 94 CompositeComponentImpl(AbstractCompositeComponent).publish(Event) line: 136 
CompositeComponentImpl(AbstractCompositeComponent).start() line: 106 HelloWorldWSClientTestCase(SCATestCase).deployExtension(CompositeComponent,String, URL) line: 98 
HelloWorldWSClientTestCase(SCATestCase).setUp() line: 58 HelloWorldWSClientTestCase.setUp() line: 29 HelloWorldWSClientTestCase(TestCase).runBare() line: 125 TestResult$1.protect() line: 106 
TestResult.runProtected(Test, Protectable) line: 124 TestResult.run(TestCase) line: 109 HelloWorldWSClientTestCase(TestCase).run(TestResult) line: 118 TestSuite.runTest(Test, TestResult) line: 208 
TestSuite.run(TestResult) line: 203 JUnit3TestReference.run(TestExecution) line: 128 TestExecution.run(ITestReference[]) line: 38 RemoteTestRunner.runTests(String[], String, TestExecution) line: 460 
RemoteTestRunner.runTests(TestExecution) line: 673 RemoteTestRunner.run() line: 386 RemoteTestRunner.main(String[]) line: 196Any clue?Thanks,Raymond----- Original Message -----From: "Jim 
Marino" <[EMAIL PROTECTED]>To: <[email protected]>Sent: Monday, October 02, 2006 12:10 AMSubject: component hierarchy refactorings and system service support> Hi,>> 
I checked some changes in to support system services scoped to acomposite hierarchy in the Java SCA runtime. This will allow us to  addsupport for things such as type systems specific to an  
application andprogramming model extensions such as OpenJPA and  Hibernate.>> As part of this, the SystemCompositeComponent and AutowireComponentspecializations have been removed, leaving 
CompositeComponentImpl as  thecomposite implementation that forms both the application and  system runtimetrees. Previously, each composite contained one set of  children. This hasbeen changed so 
that each composite will contain a  collection ofapplication and system children in separate namespaces.  Each composite onthe "application" side of the runtime composite  hierarchy may 
contain bothapplication and system children. For  example, normal user-providedapplication artifacts and system  services such as a type registry or EJB3entity manager factory.   Composites on the 
"system" side of the runtimewill only contain  system artifacts as children and will not have anyapplication  children (the collections will be empty).>> The application and system 
sides of the CompositeComponentImpl aredistinct. Fro example, autowiring on the system side will traverse up  thesystem side of the runtime hierarchy while application components  may notautowire to 
system targets.   Since system and application  children arekept separate to avoid collisions, additional APIs have  been added toCompositeComponent for navigating the hierarchy (e.g.  
getSystemChild).>> Also, in line with these changes, I removed AutowireComponent and  movedthe methods up to CompositeComponent. In addition to removing  casts, thiswill allow us to add support 
for autowiring application  components, whichwill hopefully be included in the SCA specs soon.>> Finally, I moved SystemAtomicComponent to SPI so that people can  createcustom system 
extensions. This will allow us to add support  for OpenJPA andHibernate where an EntityManagerFactory and  SessionFactory respectively aremanaged by a custom system atomic  component contained in an 
applicationcomposite. An injector can be  used to access that system component andinject a JPA EntityManager  or Hibernate Session onto a component instance.Similarly, a type  system helper could be 
stored in a system component foruse by an  application.>> Jim>> ---------------------------------------------------------------------> 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]

Reply via email to