View on GitHub

Nettosphere

A Java WebSocket/HTTP server based on the Atmosphere and Netty Framework

Download this project as a .zip file Download this project as a tar.gz file

Nettosphere: A Java WebSocket and HTTP server powered by the Atmosphere Framework and the Netty Framework

The easiest way to get started with NettoSphere is to download a sample and start it. Or look at the Javadoc. You can download one of our sample distribution.

   % unzip nettosphere-<name>-distribution.jar
   % chmod a+x ./bin/nettosphere.sh
   % ./bin/nettosphere.sh

Samples are the same as then one available in Atmosphere. Bootstrap classes looks like AtmosphereHandler or Jersey

Download Nettosphere here or use Maven

     <dependency>
         <groupId>org.atmosphere</groupId>
         <artifactId>nettosphere</artifactId>
         <version>2.0.0</version>
     </dependency>

Super Simple Web Application

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .resource(MyClass.class)
                    .build())
                 .build();
    server.start();

or

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .resource(new Handler() {
                        void handle(AtmosphereResource r) {
                            r.getResponse().write("Hello World").write("from Nettosphere").flush();
                        }
                    })
                    .build())
                 .build();
    server.start();

All Atmosphere API supported. As simple as:

Top

Server static and dynamic resources, use atmosphere.xml to configure NettoSphere

        Config.Builder b = new Config.Builder();
        b.resource("./webapps")
            .port(8080)
            .host("127.0.0.1")
            .configFile("../conf/atmosphere.xml")
            .build();
        Nettosphere s = new Nettosphere.Builder().config(b.build()).build();

Top

Deploy a Resource (annotated using Jersey), access it using HTTP or WebSocket

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .resource(MyResource.class)
                    .build())
                 .build();
    server.start();

Top

Deploy an AtmosphereHandler, access it using HTTP or WebSocket

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .resource("/*", MyAtmosphereHandler.class)
                    .build())
                 .build();
    server.start();

Deploy an AtmosphereHandler, define a WebSocket protocol

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .webSocketProtocol(JMSOverWebSocketProtocol.class)
                    .resource("/*", MyAtmosphereHandler.class)
                    .build())
                 .build();
    server.start();

Top

Deploy a Servlet which use Meteor

    Nettosphere server = new Nettosphere.Builder().config(
                 new Config.Builder()
                    .host("127.0.0.1")
                    .port(8080)
                    .resource("/*", MyServlet.class)
                    .build())
                 .build();
    server.start();

Top

The Server can also be started using java

    java -cp nettosphere-all.jar
          org.atmosphere.nettosphere.Nettosphere
                [/path/to/an/exploded/war/file] [host] [port]

Top

Using Maven and the Git repo

mvn exec:java -Dexec.arguments='path to your exploded war file'

We are on irc.freenode.net under #atmosphere-comet and Twitter

githalytics.com alpha