Engineering
Releases
News and Events

dm Server 2.0 M3

dm Server 2.0.0.M3 has been released, and is now available for download.

In the sprints since 2.0.0.M3, we’ve made significant progress towards the final release, both in terms of new features, and in defect fixes. Take a look at the M3 release notes if you’re interested in seeing everything that we’ve been working on. Please keep your feedback coming as comments on our blog, in the forums, and on JIRA.

New and noteworthy

Integration of the OSGi Web Container reference implementation

dm Server now contains the OSGi Web Container reference implementation and uses and builds upon it for all of its web support. As part of this work we’ve also moved to using the standard XML format for the configuration of Tomcat in dm Server.

Dump analysis in the Admin Console

A new Dump Inspector has been added to dm Server’s admin console. The Dump Inspector can be used to examine diagnostic dumps produced by dm Server’s serviceability component.

dump-inspector

Using Git as our version control system

We’ve recently moved dm Server’s source code to Git as we felt that we could benefit significantly from Git’s distributed nature and its excellent support for branches. If you’re interested in accessing dm Server’s source code, and in building dm Server from source, instructions for doing so now that the code is hosted in Git can be found below.

Documentation updates

A number of the newly-added features are now covered in the dm Server user guide and programmer guide.

Use of ConfigurationAdmin

dm Server now makes extensive use of ConfigurationAdmin to manage its configuration. This has resulted in changes to dm Server’s configuration files and their format. The new files and format are described in the updated user guide.

Updated application development guide

We’ve updated our guide to creating an enterprise Java application with dm Server to bring it up-to-date with the 2.0 line.

Working with dm Server's source code

dm Server's Git repositories

Repository URL Contents
git://git.springsource.org/dm-server/util.gitGeneral-purpose utility code
git://git.springsource.org/dm-server/artifact-repositoryArtifact repository
git://git.springsource.org/dm-server/osgi-extensions.gitOSGi extensions and Equinox hooks
git://git.springsource.org/dm-server/kernel.gitdm Kernel
git://git.springsource.org/dm-server/web.gitOSGi Web Container integration and extensions
git://git.springsource.org/dm-server/servlet.gitAdmin console
git://git.springsource.org/dm-server/hosted-repositoryHosted Artifact repository
git://git.springsource.org/dm-server/documentation.gitDocumentation
git://git.springsource.org/dm-server/dm-server.gitPackaging

Building dm Server from source

Setup

Before you can build dm Server from source, the following will have to be setup on your machine:


  • Java 6 installed and the JAVA_HOME environment variable configured to point to it

  • Ant 1.7.1 or later installed

  • An ANT_OPTS environment variable configured to provide a max heap of at least 512MB, e.g. ANT_OPTS=Xmx512m

  • Git client
  • With this setup complete you’re ready to build dm Server.

    Packaging published binaries

    The easiest way to build a packaged dm Server zip file is to build one from existing binaries that have already been published:

    git clone git://git.springsource.org/dm-server/dm-server.git
    cd dm-server
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    ant jar package
    

    The build will download all of the bundles that comprise the 2.0.0.M3 release of dm Server and package them into a install binary. You can find this binary in the target/artifacts directory.

    Building entirely from source

    To build dm Server entirely from source, you’ll have to clone a number of repositories so that you have the entire codebase on your machine. It’ll then be necessary to perform a checkout in each repository to ensure that you’re working against the 2.0.0.M3 tags. The relative locations of each of the repositories are important, so please perform all the clones from the same directory:

    git clone git://git.springsource.org/dm-server/util.git
    git clone git://git.springsource.org/dm-server/artifact-repository
    git clone git://git.springsource.org/dm-server/osgi-extensions.git
    git clone git://git.springsource.org/dm-server/kernel.git
    git clone git://git.springsource.org/dm-server/web.git
    git clone git://git.springsource.org/dm-server/servlet.git
    git clone git://git.springsource.org/dm-server/hosted-repository
    git clone git://git.springsource.org/dm-server/documentation.git
    git clone git://git.springsource.org/dm-server/dm-server.git
    

    Now we must update each clone’s working copy to work against the 2.0.0.M3 tag:

    cd artifact-repository
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../dm-server
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../documentation
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../hosted-repository
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../kernel
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../osgi-extensions
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../servlet
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../util
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    cd ../web
    git checkout --track 2.0.0.M3 -b 2.0.0.M3
    

    The various repositories are now setup so we’re ready to build dm Server from source:

    cd ../dm-server/build-dm-server
    ant src-build
    

    Once the build has completed a dm Server install binary, in the form of a zip file, can be found in target/artifacts.

comments powered by Disqus