So for a second there I thought I was close. It appears that I am still very
lost though…
Below the ‘details’ of the project. I stripped the feature down to only 2
bundles, an API bundle and a remote-services bundle.
<!-- cxf-dosgi.version = 2.3.0 -->
<!-- aries-rsa.version = 1.11.0 -->
<repository>mvn:org.apache.cxf.dosgi/cxf-dosgi/${cxf-dosgi.version}/xml/features</repository>
<repository>mvn:org.apache.aries.rsa/rsa-features/${aries-rsa.version}/xml/features</repository>
<feature name="automation-service-consumer" version="${pom.version}">
<feature version="${cxf-dosgi.version}"
dependency="true">cxf-dosgi-provider-ws</feature>
<feature version="${aries-rsa.version}"
dependency="true">aries-rsa-discovery-local</feature>
<!-- We don't use zookeeper but a remote-services file instead. -->
<!-- feature>aries-rsa-discovery-zookeeper</feature-->
</feature>
<bundle>mvn:my.server/my.automation.remoteservices/5.1.0-SNAPSHOT</bundle>
<bundle>mvn:my.server/my.automation/5.1.0-SNAPSHOT</bundle>
</feature>
And a very basic distro pom.xml
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${karaf.version}</version>
<extensions>true</extensions>
<configuration>
<installedFeatures>
</installedFeatures>
<startupFeatures>
</startupFeatures>
<bootFeatures>
<feature>standard</feature>
<feature>wrap</feature>
<feature>feature</feature>
<feature>shell</feature>
<feature>deployer</feature>
<feature>scr</feature>
<feature>deployer</feature>
<feature>bundle</feature>
<feature>config</feature>
<feature>diagnostic</feature>
<feature>instance</feature>
<feature>jaas</feature>
<feature>log</feature>
<feature>package</feature>
<feature>service</feature>
<feature>system</feature>
<feature>kar</feature>
<feature>ssh</feature>
<feature>management</feature>
<feature>webconsole</feature>
</bootFeatures>
<libraries>
</libraries>
<javase>1.8</javase>
</configuration>
</plugin>
</plugins>
The remote-services.xml has only one endpoint-description
<endpoint-descriptions xmlns="http://www.osgi.org/xmlns/rsa/v1.0.0">
<endpoint-description>
<property name="objectClass">
<array>
<value>my.automation.MyService</value>
</array>
</property>
<property
name="endpoint.id">http://my.server.com:8088/services/MyService/</property>
<property name="service.imported.configs">org.apache.cxf.ws</property>
</endpoint-description>
</endpoint-descriptions>
rsa:enpoints doesn’t return anything.
Any suggestions would be greatly appreciated.
Kind Regards,
Ewin
> On Nov 4, 2018, at 17:01, Erwin Hogeweg <[email protected]> wrote:
>
> Ah ok thanks. I’ll dig a little deeper then.
>
> Erwin
>
>
>> On Nov 4, 2018, at 16:56, Christian Schneider <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> Not sure if this is the same thing.
>>
>> The service decoration namespace is used to export existing services (as far
>> as I recall). The rsa 1.0.0 namespace is used to import a remote service
>> when you do not use a full discovery.
>>
>> The cxf namespace is still present in this module:
>> https://github.com/apache/cxf-dosgi/tree/master/decorator
>> <https://github.com/apache/cxf-dosgi/tree/master/decorator>
>> Normally you do not need it though as you can set the necessary service
>> properties directly on your service to be exported.
>>
>> Christian
>>
>> Am So., 4. Nov. 2018 um 22:40 Uhr schrieb Erwin Hogeweg
>> <[email protected] <mailto:[email protected]>>:
>> Hi Christian, Thanks for your reply.
>>
>> I believe I just found the issue. I ran into this line of code in the
>> DecorationParser:
>>
>> return ns.equals("http://cxf.apache.org/xmlns/service-decoration/1.0.0
>> <http://cxf.apache.org/xmlns/service-decoration/1.0.0>”);
>>
>> My namespace says:
>>
>> http://www.osgi.org/xmlns/rsa/v1.0.0
>> <http://www.osgi.org/xmlns/rsa/v1.0.0>
>>
>> So that is not going to work. Looks like the format of the remote-services
>> file changed somewhere between 1.7.0 and 2.3.0.
>>
>>
>> Cheers,
>>
>> Erwin
>>
>>
>>> On Nov 4, 2018, at 15:26, Christian Schneider <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>
>>> Remote service xml should still work. See
>>> https://github.com/apache/aries-rsa/blob/master/discovery/local/Readme.md
>>> <https://github.com/apache/aries-rsa/blob/master/discovery/local/Readme.md>
>>> .
>>>
>>> Do you have some sample code in git to look at? Some snippets might also
>>> help.
>>> One other thing you could try is to install the zookeeper discovery just to
>>> see if it would work.
>>>
>>> You can also try to see if your endpoints are visible by using the
>>> rsa:endpoints command.
>>>
>>> Christian
>>>
>>> Am So., 4. Nov. 2018 um 18:35 Uhr schrieb Erwin Hogeweg
>>> <[email protected] <mailto:[email protected]>>:
>>> Hi,
>>>
>>> We are upgrading a ‘plain’ OSGi app to Karaf-4.2.x. That went well until we
>>> got stuck on the DOSGi part. In the existing app we use CXF-3.1.1 and
>>> DOSGi-1.7.0, with remote-services.xml file.
>>>
>>> We tried about everything but the proxy service is never created. We also
>>> checked out the DOSGi samples, but they use the zookeeper. Is DOSGi-2.3.0
>>> still supposed to work with the remote-service.xml file?
>>>
>>> In a desperate dash to make this work I installed about every CXF feature
>>> that seemed to make sense (below) but to no avail.
>>>
>>> I am sure it is something obvious, but it hasn’t dawned on us yet. Any
>>> suggestions or pointer do documentation would be greatly appreciated.
>>>
>>>
>>> Cheers,
>>>
>>> Erwin
>>>
>>>
>>> karaf@root()> feature:list | grep -i cxf
>>> cxf-specs │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-jaxb │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-abdera │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> wss4j │ 2.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-core │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-commands │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-wsdl │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-policy │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-addr │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-rm │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-mex │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-security │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-rt-security │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-rt-security-saml │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-http-client │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-http │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-http-provider │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-http-jetty │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-http-async │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-http-netty-client │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-http-netty-server │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-http-undertow │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-bindings-soap │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-jaxws │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-jaxrs │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-rs-security-xml │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-security-sso-saml │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-security-cors │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-security-oauth │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-security-jose │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-security-oauth2 │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-jackson │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-jsr-json │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-tracing-brave │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-rs-description-swagger2 │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-databinding-aegis │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-databinding-jaxb │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-features-clustering │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-features-logging │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-features-throttling │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-features-metrics │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-bindings-corba │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-bindings-coloc │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-transports-local │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-transports-jms │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-transports-udp │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-transports-websocket-client │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-transports-websocket-server │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-javascript │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-frontend-javascript │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-xjc-runtime │ 3.2.0 │ │
>>> Started │ cxf-3.2.0 │
>>> cxf-tools │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf │ 3.2.0 │ x │
>>> Started │ cxf-3.2.0 │
>>> cxf-sts │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-wsn-api │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-wsn │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-ws-discovery-api │ 3.2.0 │ x │
>>> Started │ cxf-3.2.0 │
>>> cxf-ws-discovery │ 3.2.0 │ x │
>>> Started │ cxf-3.2.0 │
>>> cxf-bean-validation-core │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-bean-validation │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-jaxrs-cdi │ 3.2.0 │ │
>>> Uninstalled │ cxf-3.2.0 │
>>> cxf-dosgi-common │ 2.3.0 │ x │
>>> Started │ cxf-dosgi-2.3.0 │
>>> cxf-dosgi-provider-ws │ 2.3.0 │ x │
>>> Started │ cxf-dosgi-2.3.0 │
>>> cxf-dosgi-provider-rs │ 2.3.0 │ │
>>> Uninstalled │ cxf-dosgi-2.3.0
>>>
>>>
>>> --
>>> --
>>> Christian Schneider
>>> http://www.liquid-reality.de <http://www.liquid-reality.de/>
>>>
>>> Computer Scientist
>>> http://www.adobe.com <http://www.adobe.com/>
>>>
>>
>>
>>
>> --
>> --
>> Christian Schneider
>> http://www.liquid-reality.de <http://www.liquid-reality.de/>
>>
>> Computer Scientist
>> http://www.adobe.com <http://www.adobe.com/>
>>
>