Title: Nachricht

I am working with beta-2 and use following configuration for my service:

    <service-point id="TestComponent1" interface="framework.transaction.TestComponent">
        <invoke-factory service-id="hivemind.BuilderFactory">
            <construct class="framework.transaction.TestComponentImpl">
                <set-service property="component2" service-id="TestComponent2"/>
            </construct>
        </invoke-factory>
    </service-point>

    <service-point id="TestComponent2" interface="framework.transaction.TestComponent">
        <invoke-factory service-id="hivemind.BuilderFactory">
            <construct class="framework.transaction.TestComponentImpl">
            </construct>
        </invoke-factory>
    </service-point>

With implementation class:

public class TestComponentImpl implements TestComponent {
 private TestComponent component2;
 public void setComponent2(TestComponent component2) {
  this.component2 = component2;
 }
 // ...
}

TestComponent1 will be initialized correctly, but acessing the property 'component2' I get following exception:

Unable to autowire property component2 of service framework.transaction.TestComponent2: There are multiple service points for interface framework.transaction.TestComponent: {framework.transaction.TestComponent, framework.transaction.TestComponent2}.

What is wrong here ? It should be possible to define two services with the same interface (and same implementation class) but different injektions for member-services.

By the way: this example has worked withe beta-1.

Thanks.

Andre

Reply via email to