Brutusin-RPC
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:
Live demos
- http://demo.rpc.brutusin.org
- http://secure.demo.rpc.brutusin.org (see here needed credentials)
- http://chat.demo.rpc.brutusin.org
Support, bugs and requests
https://github.com/brutusin/Brutusin-RPC/issues
Authors
- Ignacio del Valle Alles (@idelvall)
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