|
Welcome to the home
of Spring.NET.
Led and sustained
by SpringSource,
a division of VMware,
Spring.NET
is an open source application
framework that makes building enterprise .NET applications
easier.
Providing
components based on proven design patterns
that can be integrated into all tiers of your application architecture,
Spring
helps increase development productivity and improve application quality
and
performance.
Please read the overview
for additional information.
Commercial
support and training are available through SpringSource.
ANNOUNCEMENT: SpringSource
is pleased to offer public training
for Spring.NET. Current training dates are:
During this
four-day bootcamp you learn how to use the
Spring.NET Framework to create well-designed, testable business
applications in an agile manner. See the syllabus
for detailed course information
Refer to the SpringSource
University Training Page for
more information on SpringSource
training offerings or to contact us.
ANNOUNCEMENT:
Dear Spring Community,
We are pleased to announce that the first milestone release of the
Spring GemFire 1.0 project is now available for both Java and .NET!
Download it
now: Spring
GemFire for Java | Spring
GemFire for .NET
The Spring AMQP project aims to make it easier to build
Spring-powered highly scalable applications using GemFire as
distributed data management platform.
To learn more about the project, visit the Spring
GemFire Homepage. There you will
find links to the Reference Manual,
Forum, Issue Tracker, and more.
The features in 1.0.0 M1 for .NET include
- Spring
FactoryObjects to enable dependency injection style configuration
of GemFire infrastructure classes such as Cache, Region, Interests, etc.
- Exception
translation to Spring's portable Data Access exception
hierarchy for GemFire exceptions.
- Console based 'shell' sample
application to allow for ad-hoc interaction with the data grid.
Note the Java version has additional features. The feature set
for Spring GemFire for .NET M2 is on the issue tracker.
Looking forward to your feedback on the forum
or in the issue
tracker.
[2010-8-3]
ANNOUNCEMENT:
Dear Spring Community,
We are pleased to announce that the first milestone release of the
Spring AMQP 1.0 project is now available for both Java and .NET!
Download it
now: Spring
AMQP for Java | Spring
AMQP for .NET
The Spring AMQP project aims to simplify the development of AMQP based
applications with a POCO centric programming model. It also
aims
to provide portability across AMQP implementations such as RabbitMQ and
Apache Qpid.
If you are familiar with Spring's existing messaging support for
ActiveMQ, MSMQ, or TIBCO EMS Spring AMQP should be easy to pick up.
To learn more about the project, visit the Spring
AMQP Homepage. There you will
find links to the Reference Manual,
Forum, Issue Tracker, and more.
The features in 1.0.0 M1 include
- An AMQP
implementation agnostic Message API for use
across multiple implementations (RabbitMQ and Qpid)
- A POCO based
programming model promoted through
the use of MessageConverters and POCO based message handlers.
- AmqpTemplate -
with specific vendor subclasses - to
simplify synchronous publishing and consuming of messages.
- A
MessageListenerContainer for asynchronous
multilthreaded message consumption.
- A
ConnectionFactory abstraction manages a single
connection to the broker and an experimental implementation that
supports a cache of Channels
- JSON
MessageConverter
- Administration API
that mirrors functionality in
rabbitmqctl.
- ErlangTemplate -
to facilitate easy calling of Erlang
functions from .NET
- Two example
applications
- Reference and
API documentation
Apache Qpid support is minimal in M1 and was used to vet the Messaging
abstractions.
Looking forward to your feedback on the forum
or in the issue
tracker.
[2010-7-16]
UPCOMING
NEW RELEASES: With
SpringSource's aquisition of Gemstone
and Rabbit
Technologies we have
started open source projects to provide integration of data grid
and AMQP messaging functionality with Spring.NET.
If you would like to participate in the development of these
open-source projects, please reach
out. Note, the range
of products to integrate is not limited
to Gemstone/RabbitMQ.
The Spring AMQP project aims to provide portability across AMQP
specifications and vendor implementations such as RabbitMQ and QPid.
If you are familiar with Spring.NET's support for ActiveMQ, MSMQ, or
TIBCO EMS you should feel right at home.
Features include
- A POCO based
programming model promoted through
the use of MessageConverters and POCO based message handlers.
- AmqpTemplate -
with specific vendor subclasses - to
simplify synchronous publishing and consuming of messages.
- A
MessageListenerContainer for asynchronous
multilthreaded message consumption.
- Low level
resource management of connections/channels
and integration with Spring's declarative tranasaction management are
also provided.
- Management API
for the RabbitMQ broker to
programmatically create, update, delete, and query broker configuration
and information such as exchanges, queues, users,
vhosts,
data rates, etc.
The
planned release date
of Spring AMQP Milestone 1 is July 9th.
You
can view the code
in the repostory here.
We will be moving to GIT shortly.
More news to come on Spring.NET integration with
Gemstone products such as Gemfire
and SQLFabric.
[2010-6-24]
USER GROUP:
Mathias
Kluba, Florent Dugué
& David Coppet spoke at the French
Spring User Group
about Spring.NET. Slides and information
are available here
(in French).
[2010-6-22]
CODE
CAMP: Milan
Negovan spoke at the NYC
Code Camp on Real-World
Inversion of Control and Dependency Injection with WebForms.
Slides available here.
[2010-3-6]
PODCAST:
The Connected Show #24, Peter Laudati
interviews Mark Pollack to discuss Spring.NET, Dependency Injection,
Aspect-Oriented Programming and more.
[2010-2-10]
INTERVIEW:
InfoQ's Ryan Slobojan interviews Mark Pollack on Spring.NET
1.3 and future directions for the framework.
[2010-2-11]
USER
GROUP MEETING: Milan
Negovan spoke at the Long
Island .NET Users Group on
Inversion of Control and Dependency
Injection with Spring.NET. Code available here.
[2010-1-8]
FEATURED
BLOG: Erich Eichinger
has posted several
interesting blog
articles on AOP, Application
Monitoring and code
based configuration of DI/AOP
with Spring.NET.
Here is a 'sneak peak' of the code based configuration using
the
classic MovieFinder example. A variation on this DI configuration style
will be part of the Spring.NET 2.0 release.
[Configuration] public class MovieFinderConfiguration { public virtual IMovieFinder MovieFinder() { return new MovieFinder(); }
public virtual IMovieLister MovieLister() { return new MovieLister( MovieFinder() ) } }
As close to what you would have written in 'normal' code to configure
the two objects. Note, this code is external
to your
code, just like XML files are
external to your code, therefore non-invasive.
This approach is taken from the Spring JavaConfig
project,
based on an idea
from Rod Johnson. This
approach has matured and is
included an a DI configuration option in the Spring Java 3.0
release. ( blog,
docs)
Please see Erich's blog
for more details.
[2010-1-8]
ANNOUNCEMENT:
Dear Spring Community,
We are pleased to announce that Spring .NET
1.3.0 is
now available.
Download
| Support
| Documentation
| Community
This release contains the following new major features:
- Micosoft
Test Framework integration -
Integration test classes to support MSTest in addition to NUnit.
- TIBCO
EMS integration
- Helper classes to increase your productivity developing messaging
based applications with TIBCO EMS.
- NVelocity
integration - Helper classes to
configure a NVelocity template engine in a Spring based application
- VS.NET
Solution Templates - VS.NET 2008
based solution templates to get you up and running quickly creating
Spring based applications.
- DI
support for Enterprise Service Components
Other notable new features:
Please refer to the changelog
for
additional details.
Looking forward to a quick 1.3.1 release and then Spring.NET 2.0.
Please register your feature suggestions in JIRA.
Check out Erich Eichingers's blog for a preview of code
based configuration (no XML).
Happy Holidays!
[2009-12-17]
PROJECT
NEWS: The Spring.NET 1.3 GA
release is scheduled for December 15th 2009. Thanks for your
patience.
[2009-11-21]
PROJECT
INFRASTRUCTURE UPDATED:
Bamboo is now being used as the Spring.NET
Continuous Integration Server.
There is integration between
Bamboo, JIRA, and Fisheye allowing you to navigate between
the
various views of the projects easily.
[2009-11-04]
FEATURED
BLOG:
Tom
Farnbauer blogged about his
recent release of Recoil 1.1.0, a
fluent interface extension for Spring.NET
[2009-10-10]
UPCOMING EVENT:
"Inversion of Control (IoC) and Dependency Injection for
ASP.NET" by Milan Negovan at the
Fairfield/Westchester .NET User Group on 10/1/2009.
Click here
for more info.
[2009-9-29]
ANNOUNCEMENT:
Dear Spring Community,
We are pleased to announce that Spring .NET 1.3.0 RC1
is
now available.
Download
| Support
| Documentation
| Community
This release contains the following new major features:
- Micosoft
Test Framework integration -
Integration test classes to support MSTest in addition to NUnit.
- TIBCO
EMS integration
- Helper classes to increase your productivity developing messaging
based applications with TIBCO EMS.
- NVelocity
integration - Helper classes to
configure a NVelocity template engine in a Spring based application
- VS.NET
Solution Templates - VS.NET 2008
based solution templates to get you up and running quickly creating
Spring based applications.
- DI
support for Enterprise Service Components
Other notable new features:
This release includes approximately 100 bug fixes
and enhancements since the 1.2.0 release.
Please refer to the changelog
for
additional details.
Enjoy!
[2009-8-3]
RELEASE
NEWS:
Spring.NET 1.3 RC1 is planned to be released on July 29th followed by a
GA release on August 10th.
The release will contain all bug fixes that were scheduled for the
1.2.1 release as well as new features to support TIBCO messaging and
integration testing support with Microsoft's testing framework. A few
other new features
such as NVelocity integration will also be included.
As most of the changs are derivative of existing features no milestone
release is planned. Thanks for your patience is waiting for this
release.
Please raise or vote for JIRA issues that you want to
see included.
[2009-7-21]
CASE
STUDY :
Credit Market
Analysis Makes Major Productivity Gains
With Spring.NET
“Spring.NET
has removed 30% of
our development time, by
providing the communication infrastructure between the layers of our
software – and that 30% can now be focused on new features or
speed to
market.”
“With
Spring.NET the cycle to
find and fix a problem has been
dramatically shortened. We used to take a week to resolve issues, now
we can turn a solution around in a day.”
“We
are using Spring.NET to
differentiate our software in the market.”
~Mike
Krolnik, CTO, Credit Market
Analysis
READ
THE COMPLETE CASE STUDY
[2009-6-1]
FEATURED
BLOG :
Eric Lemes has written parts two and three of his blog serires covering
declarative transaction management, ADO.NET data access, and web
service exporters. (In Portuguese).
Check it out Part
II
and Part
III!
[2009-4-8]
FEATURED
BLOG :
Eric Lemes has written part one of a multi-part tutorial on
dependency injection using Spring.NET in Portuguese.
Check it out here!
[2009-3-16]
ANNOUNCEMENT:
We are pleased to announce Spring
Extensions; a new venture by
SpringSource to encourage and support quality community contributed
extensions to the Spring projects and programming model.
Spring Extensions hosts three .NET projects
led by members of the Spring.NET community
Spring
db40 for .NET
The purpose of this extension is to allow users of the popular db4o
object database on the .NET platform to make use of Spring's powerful
data access features, just like they can already do using ADO and
NHibernate.
Lead: Dirk Lowers
Spring
Integration for .NET
Spring Integration for .NET provides an extension of the Spring
programming model to support the well-known Enterprise Integration
Patterns while building on the Spring Framework's existing support for
enterprise integration. It enables simple messaging within Spring-based
applications and integrates with external systems via simple adapters.
Those adapters provide a higher-level of abstraction over Spring's
support for remoting, messaging, and scheduling. Spring Integration's
primary goal is to provide a simple model for building enterprise
integration solutions while maintaining the separation of concerns that
is essential for producing maintainable, testable code.
The Spring Integration for .NET project will use the design and code
base of the Spring
Integration for Java project as
a basis, adapting the code as
need to support .NET idioms and move in the direction to take advantage
of .NET only features such as Lambda expressions and extension methods.
Lead: Andreas Döhring
Spring
Threading
This project is based on a .NET port of the JSR-166 Java library for
concurrency. We're making every attempt the bring the library over
as-is while making it easy to use for both .NET developers and Java
developers coming to .NET.
Lead: Griffin Caprio
Thanks to each leads for their hard work. Follow the
links for additional project information.
[2009-1-20]
PODCAST:
A collection of podcasts hosted by SkillsMatter from Russ Miles, senior
consultant for SpringSource in the UK, on Spring.NET can be found here
[2008-12-5]
ARTICLE:
SearchWinDevelopment.com
has an article discussing the growing popularity of open-source Java
frameworks finding there way into the .NET ecosystem, in particular
Spring for .NET.
Read the article by Yuval Shavit here.
[2008-12-5]
|