The khsSherpa framework is an open source framework created by the consultants of Keyhole Software. This framework allows developers to easily implement a RESTful API layer using POJOs and annotations.

It is publicly available on github with the latest version (1.3.0) available in the Maven Public Central Repository.


khsSherpa allows you to turn Java application servers into remote JSON data access mechanisms for mobile and HTML5/JavaScript applications.

This lightweight server side framework allows Java classes (POJOs) contained inside a JEE application server to become JSON end points that can be consumed via HTTP by native mobile devices or HTML/JavaScript clients.

Many MVC frameworks exist, but khsSherpa is intended to allow access to server side Java objects with HTTP/and JSON. It also provides session support for client applications that exist outside of a browser. Additionally, khsSherpa easily integrates with the Spring framework (see Spring Configuration section).

How khsSherpa Works

The intent of the khsSherpa framework is to invoke service side Java classes, which we refer to as endpoints, and execute methods that are members of this endpoint. Member method execution can accept parameters via an HTTP request and/or return object values serialized as JSON objects. The framework utilizes the Jackson JSON framework to serialize result objects. Here are a list of features the framework provides:

  • Annotation-based Configuration
  • RESTful Service URL Support
  • Spring Support
  • Authentication and Role-based Permissions
  • JSONP Cross Domain Support
  • Session Support
  • Plug-gable User Activity Logging
  • Type Mapping
  • XSS prevention support
  • Works with any JEE application server
  • Plug-gable JSON Serialization

Getting Started

Using Maven: add this dependency in your ‘pom.xml’ (available in the Maven central repo)


Not using Maven: include following jars in lib class path


To build it, clone then install in local Maven repo:

$ git clone …
$ cd khs-sherpa
$ mvn install

Related Tools

Sherpa Google Guice – a module that allows Sherpa to be used with the Guice dependency injection framework. Info –

Pluggable bean management- Sherpa also integrates with the Spring framework. Info –