Hi all,
I am wrapping webservice calls with OSGi service calls to hide the fact
that web services are used.
To do so my typical setup for a service is:
common - service interface and data classes
service - service impl and cxf endpoint
client - Creates cxf proxy and publishes an OSGi service with the
interface of the service
In user bundles I then just refer to the OSGi service and can access the
remote service.
I use blueprint to create the cxf endpoint and proxy and also to create
the service.
My problem is with what the maven bundle plugin produces for the client
module. The good thing is that it understands the <service> tag and
automatically
imports the package of my service interface.
It does not import the other classes the service interface refers to though.
I have this interface:
package org.talend.examples.crmservice;
import org.talend.examples.crmservice.model.Customer;
public interface CRMService {
Customer getCustomer(String id);
}
So the interface needs access to the Customer class. This is in a
different package than the interface. The maven bundle plugin does not
seem to detect this though and so does not import the
org.talend.examples.crmservice.model package.
Is this a bug?
Here is my example if you want to take a look at it in detail:
https://github.com/cschneider/problem-maven-bundle-plugin
To keep it simple I did not use CXF and instead used the java Proxy
class to create a dynamic proxy. CXF does the same behind the scenes.
Christian
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
http://www.talend.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]