Simon Laws wrote:
On Tue, Sep 21, 2010 at 10:08 AM, Matthias Herbst
<[email protected]> wrote:
Hi!
I' have a problem starting a webservice in a Composite with its service
definitions outside the components. When I put the service definition inside
the component it works without a problem but as soon as I put the service
definition inside the composite (outside of the component) the jetty server
doesn't start and I have only a sca service binding and no webservice
binding
It already worked when I used the tuscany libaries as usual classpath
dependencies. But I think I have to put some more dependencies inside my
pom.
the composite file that doesn't work anymore (but worked before) looks like
this:
<!-- ########### Promoting Services ############ -->
<!-- Definition of Registry Service -->
<service name="RegistrationService"
promote="RegistryComponent/RegistrationService">
<interface.java
interface="de.uniba.pipra.registry.RegistrationService"/>
<binding.ws/>
</service>
<!-- Definition of Registry Lookup Service -->
<service name="LookupService" promote="RegistryComponent/LookupService">
<interface.java interface="de.uniba.pipra.registry.LookupService"/>
<binding.ws/>
</service>
<!-- ########### Component Definitions ######### -->
<!-- Definition of Registry Service Component -->
<component name="RegistryComponent">
<implementation.java
class="de.uniba.pipra.registry.impl.RegistryComponent"/>
</component>
the pom dependencies look like this:
dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-assembly-xml</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-host-http</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-adb</artifactId>
<version>1.5.1</version>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-kernel</artifactId>
<version>1.5.1</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-host-jetty</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-node-impl</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-implementation-java-runtime</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-sca-api</artifactId>
<version>2.0-M5</version>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-binding-ws</artifactId>
<version>2.0-M5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-binding-ws-runtime-axis2</artifactId>
<version>2.0-M5</version>
<scope>provided</scope>
</dependency>
Perhaps someone knows what dependencies I need
best regards,
Matthias
Hi Matthias
How is your composite deployed? Is is used by another composite via an
implementation.composite element or is it deployed as a top level
composite in it's own right?
The dependencies look OK at first glance. Are you saying it stopped
working when you simply moved the binding.ws element to the promoted
services? I.e. you didn't change dependencies at the same time?
Are you seeing any errors or warnings reported?
Regards
Simon
The SCA 1.1 spec clarified the meaning of composite services and
references. In SCA 1.1, configuration provided by composite services
and references is ignored if the composite is deployed into the domain
instead of being used by implementation.composite.
The SCA 1.0 spec didn't make this clear and as a result Tuscany 1.x
always merges configuration information in composite references into
the promoted component references. So on Tuscany 1.x you would see
this information merged, but on Tuscany 2.0 it should not be merged.
Simon