I've gotten this working, though It took a bit of work, though I think i've
done it the proper way.  Unfortunately, though you have to rebuild cxf and
dosgi yourself.  I only hope the folks at the cxf project accept the patch I
submitted to them.

https://issues.apache.org/jira/browse/DOSGI-55


You have to start by doing this:

1.  Checkout the CXF version from tag 2.2.5 from subversion (i'm assuming
you could start with 2.2.6 as well, as there are no code changes, just build
file changes)
2.  Checkout DOSGI trunk from subversion

Apply the two patches I submitted to this ticket to the CXF and DOSGI
checkouts, respectively.

The CXF patch does three things:
   1.  Switches the spring version from 2.5.6 to 3.0
   2.  Fixes a missing osgi import for com.sun.xml.bind
   3.  Adds a dependency on spring-tx which is needed

The DOSGI patch does this:
   1.  Moves spring to 3.0 and spring-dm to 1.2.1
   2.  Adds new distributions specifically for dmServer which leaves out
artifacts from the single and multibundle distros which are not needed when
deploying on dmServer


Then, you can following these instructions to deploy once you've built the
multibundle distro:

1.  Add the dosgi multibundle jars to your usr repository (or setup a
seperate repository if you choose to do so, which is my preference).

    Edit config/com.springsource.repository.properties

      dosgi.type=watched
      dosgi.watchDirectory=repository/dosgi

      chain=ext,usr,dosgi

2.  Add the following plan file to the your repository's directory
(repository/usr or repository/dosgi, or wherever you placed the dosgi jars):

<plan name="org.apache.cxf.dosgi.multibundle" version="1.2" scoped="false"
atomic="false"
                xmlns="http://www.springsource.org/schema/dm-server/plan";
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xsi:schemaLocation="
                        http://www.springsource.org/schema/dm-server/plan

http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd
">

        <artifact type="bundle" name="org.apache.cxf.bundle-minimal"
version="2.2.5"/>
        <artifact type="bundle" name="cxf-dosgi-ri-dsw-cxf" version="1.2"/>
        <artifact type="bundle" name="cxf-dosgi-ri-discovery-local"
version="1.2"/>
        <artifact type="bundle" name="cxf-dosgi-ri-topology-manager"
version="1.2"/>
</plan>

3.  Edit your config/com.springsource.kernel.userregion.properties  and add
this to your "initialArtifacts" property:

       ,repository:plan/org.apache.cxf.dosgi.multibundle


4.  Start dmServer


This was all tested and done on dmServer 2.0.  I've been able to run JaxWS
services with Hibernate + oracle.  wss4j took a little hacking but I got it
done.


On Fri, Mar 5, 2010 at 10:29 AM, Jacek Bilski <[email protected]>wrote:

> Hi,
>
> I got it working, but not as it should be done. Now I left all the
> configuration and simply put all jars in repository/usr and then, in my
> MANIFEST.MF I explicitly imported package org.apache.cxf.dosgi.dsw.service.
> Now it works. Question is how should I do the same thing, but without this
> import-package?
>
> Regards
>
> Jacek Bilski
>

Reply via email to