Greg Turnquist b22ec3fa00 Make AbstractMongoSessionConverter injectable
While it defaults to the coverter based on whether or not Jackson is on the classpath, this attribute must be overridable based on whatever is in the application context.
2017-08-30 09:53:08 -05:00
2017-01-05 14:05:07 -06:00
2017-06-16 11:16:40 -05:00
2017-05-24 20:29:42 -05:00
2016-02-01 14:27:19 -06:00
2017-08-23 14:17:15 -05:00
2017-08-02 14:33:23 -05:00
2017-06-26 17:59:23 -05:00
2017-05-24 16:07:27 -05:00

image:https://travis-ci.org/spring-projects/spring-session-data-mongodb.svg?branch=master["Build Status", link="https://travis-ci.org/spring-projects/spring-session-data-mongodb"]

= Spring Session MongoDB
Greg Turnquist

Spring Session MongoDB provides a solution for Spring Session in a MongoDB data store.

* Accessing a session from any environment (i.e. web, messaging infrastructure, etc)
* In a web environment
** Support for clustering in a vendor neutral way
** Pluggable strategy for determining the session id
** Easily keep the HttpSession alive when a WebSocket is active


== Building Spring Session MongoDB

. Run `mvn clean package`

This will generate the artifact.

You can also import the project into your IDE.

== Releasing Spring Session MongoDB

Snapshots are published automatically via CI server by doing this:

----
$ USERNAME=<username> PASSWORD=<encrypted password> mvn -Pdistribute,snapshot,docs clean deploy
----

IMPORTANT: Snapshots do NOT include GPG signatures. To do so would require putting a private key on the CI server. The process for releases (below) is manual and DOES include GPG signatures.

To do a release (.RELEASE, .RC?, .M?):

. Check in all changes and ensure there are no edited files.
. Bump up the version in `pom.xml` to the desired version and commit the change.
. `git tag <version>` (like v2.0.1.RELEASE)
. Execute a maven deploy.
* For a milestone: `USERNAME=<user> PASSWORD=<encrypted password> mvn -Pdistribute,gpg,milestone,docs clean deploy`
* For a release: `USERNAME=<user> PASSWORD=<encrypted password> mvn -Pdistribute,gpg,release,docs clean deploy`
* For a release to maven central: `USERNAME=<user> PASSWORD=<nexus password> mvn -Pdistribute,gpg,central,docs clean deploy -s settings.xml`
. Bump up the version in `pom.xml` again to the next BUILD-SNAPSHOT.
. Commit the change.
. `git push` (This will push the tagged version along with the release AND the new snapshot commit)
. Inspect handiwork at https://repo.spring.io/ or https://oss.sonatype.org/#stagingRepositories

NOTE: A word about reference documentation. Based upon https://github.com/spring-projects/spring-framework/wiki/gradle-build-and-release-faq#user-content-wiki-docs_schema_dist_publication[this], the `distribute` profile contains an artifactory property that is applied to the ZIP file generated by the `docs` profile. A CRON job will scoop up the zipped up docs and unpack them inside the target location.

== Code of Conduct
This project adheres to the Contributor Covenant link:CODE_OF_CONDUCT.adoc[code of conduct].
By participating, you  are expected to uphold this code. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

= Spring Session Project Site

You can find the documentation, issue management, support, samples, and guides for using Spring Session MongoDB at http://projects.spring.io/spring-session-data-mongodb/

= License

Spring Session is Open Source software released under the http://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].
Description
No description provided
Readme 20 MiB
Languages
Java 97.9%
Shell 2.1%