Skip to content

brutusin/Brutusin-RPC

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Brutusin-RPC Hex.pm Build Status Maven Central Latest Version

Brutusin-RPC shiny logo

JEE web framework for creating self-descriptive JSON-RPC microservices and single-page applications with minimal effort.

Features

  • JSON-RPC 2.0 over HTTP
  • JSON-RPC 2.0 over websockets
  • Messaging (publish/subscribe) over websockets
  • Java & Javascript client API
  • Builtin descriptive services and functional testing module
  • Arbitrary complex input and output description based on JSON Schema
  • Spring-security integration
  • Embedded server runtimes

Full Documentation

See the Wiki for full documentation, examples, operational details and other information.

Quick start. Code and test!

Run this java application:

import org.brutusin.rpc.Server;
import org.brutusin.rpc.websocket.WebsocketAction;

public class HelloAction extends WebsocketAction<String, String> {

    @Override
    public String execute(String input) throws Exception {
        return "Hello " + input + "!";
    }

    public static void main(String[] args) throws Exception {
        Server.test(new HelloAction());
    }
}

and automatically your browser will be open with a functional testing client for the newly created service:

Service testing client

Live demos

Support, bugs and requests

https://github.com/brutusin/Brutusin-RPC/issues

Authors

Contributions are always welcome and greatly appreciated! Just fork, and send me a pull request.

License

Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0