You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Jean-Sebastien Delfino (JIRA)" <tu...@ws.apache.org> on 2006/05/05 02:30:17 UTC

[jira] Updated: (TUSCANY-299) Multiplicity 0..1 does not work - Exception in JavaContextFactory

     [ http://issues.apache.org/jira/browse/TUSCANY-299?page=all ]

Jean-Sebastien Delfino updated TUSCANY-299:
-------------------------------------------

    Attachment: org.apache.tuscany.samples.helloworldmc.HelloWorldServiceComponentTestCase.txt

> Multiplicity 0..1 does not work - Exception in JavaContextFactory
> -----------------------------------------------------------------
>
>          Key: TUSCANY-299
>          URL: http://issues.apache.org/jira/browse/TUSCANY-299
>      Project: Tuscany
>         Type: Bug

>   Components: Java SCA POJO Container
>     Versions: M1
>     Reporter: Jean-Sebastien Delfino
>      Fix For: M1
>  Attachments: org.apache.tuscany.samples.helloworldmc.HelloWorldServiceComponentTestCase.txt
>
> In your component do the following:
>   @Reference(required=false)
>     public void setGreetingSuffix(GreetingPortionProvider greetingSuffix) {
>         this.greetingSuffix = greetingSuffix;
>     }
> and do not wire that reference. This should work, greetingSuffix should just be null. Instead you'll get the following exception:
> java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
> 	at java.util.ArrayList.RangeCheck(ArrayList.java:547)
> 	at java.util.ArrayList.get(ArrayList.java:322)
> 	at org.apache.tuscany.container.java.config.JavaContextFactory.createReferenceInjector(JavaContextFactory.java:217)
> 	at org.apache.tuscany.container.java.config.JavaContextFactory.addSourceWireFactories(JavaContextFactory.java:146)
> 	at org.apache.tuscany.core.extension.ContextFactoryBuilderSupport.build(ContextFactoryBuilderSupport.java:134)
> 	at org.apache.tuscany.core.builder.impl.AssemblyVisitorImpl.visit(AssemblyVisitorImpl.java:52)
> 	at org.apache.tuscany.model.assembly.impl.AssemblyObjectImpl.accept(AssemblyObjectImpl.java:39)
> 	at org.apache.tuscany.model.assembly.impl.ExtensibleImpl.accept(ExtensibleImpl.java:66)
> 	at org.apache.tuscany.model.assembly.impl.ComponentImpl.accept(ComponentImpl.java:196)
> 	at org.apache.tuscany.model.assembly.impl.AssemblyObjectImpl.accept(AssemblyObjectImpl.java:50)
> 	at org.apache.tuscany.model.assembly.impl.CompositeImpl.accept(CompositeImpl.java:336)
> 	at org.apache.tuscany.model.assembly.impl.ModuleImpl.accept(ModuleImpl.java:97)
> 	at org.apache.tuscany.model.assembly.impl.ComponentImpl.accept(ComponentImpl.java:206)
> 	at org.apache.tuscany.core.builder.impl.AssemblyVisitorImpl.start(AssemblyVisitorImpl.java:44)
> 	at org.apache.tuscany.core.runtime.RuntimeContextImpl.build(RuntimeContextImpl.java:161)
> 	at org.apache.tuscany.core.context.impl.AbstractCompositeContext.registerModelObject(AbstractCompositeContext.java:274)
> 	at org.apache.tuscany.core.client.BootstrapHelper.registerModule(BootstrapHelper.java:133)
> 	at org.apache.tuscany.core.client.TuscanyRuntime.<init>(TuscanyRuntime.java:103)
> 	at org.apache.tuscany.core.client.TuscanyRuntime.<init>(TuscanyRuntime.java:67)
> 	at org.apache.tuscany.samples.helloworldmc.HelloWorldServiceComponentTestCase.testGeetings(HelloWorldServiceComponentTestCase.java:32)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at junit.framework.TestCase.runTest(TestCase.java:154)
> 	at junit.framework.TestCase.runBare(TestCase.java:127)
> 	at junit.framework.TestResult$1.protect(TestResult.java:106)
> 	at junit.framework.TestResult.runProtected(TestResult.java:124)
> 	at junit.framework.TestResult.run(TestResult.java:109)
> 	at junit.framework.TestCase.run(TestCase.java:118)
> 	at junit.framework.TestSuite.runTest(TestSuite.java:208)
> 	at junit.framework.TestSuite.run(TestSuite.java:203)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> To reproduce the problem use the attached test case.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira