Jive SDK - Java & Jersey Edition - Overview

Document created by Ryan Rutan on Sep 18, 2014Last modified by Ryan Rutan on Sep 18, 2014
Version 4Show Document
  • View in full screen mode

Overview

This SDK is designed for maximum enterprise compatibility using JEE 6 standards and compliant technologies, such as Java 7, Jersey JAX-RS 2.0, Spring 3.2.5 IoC and JSP.

 

Core SDK Principles

  • Simplicity.  From Download to Develop to Deploy.
  • Compatible.  Built using JEE6 (not JEE7) standards to increase compatibility with current enterprise environments and PaaS providers.
  • Proven.  Built using proven official and de-facto Java standards with as few transitive dependencies as possible.
  • Modular.  Reduce coding footprint  and increase flexibility.

sdk-diagram.png?raw=true

 

Getting Started

This SDK is designed to get you up and running in minutes.  It leverages Apache Maven along with Jetty/Tomcat maven plugins to enable rapid local and iterative development.

  1. git clone https://github.com/jivesoftware/jive-sdk-java-jersey.git
  2. cd jive-sdk-java-jersey; mvn install
  3. cd jive-addon; mvn -DclientUrl=http://your.resolvable.host.name -Dport=8090 clean jetty:run

 

Firewall Considerations

In many cases, Jive add-ons require that bilateral visibility of hostnames between the Jive instance and the middleware add-on service.  This can pose a problem for many developers who wish to do local development inside a corporate firewall.  One solution to help with this environment road-block is to use a proxy to forward port activity to your local machine. 

 

Check out the FREE ngrok tool for Windows, Mac OSX and Linux that can enable ad-hoc port forwarding to your local development environment.

 

Prerequisites

  • Java 7 JDK
  • Git
  • Maven 3.0.x
    • Note: There is a known issue at the moment with Maven 3.1.x and 3.2.x

 

Add-On Components

  • Add-On Features
    • Add-On Configuration
    • OAuth 2.0 Implementation
  • REST API - see JiveAPIClient.java
  • Tiles - see JiveTileClient.java & example implementations
    • Templates - see here
  • Jive Apps - see sample apps
    • Note:  The apps in this example are there to demonstrate app hosting in a Jive add-on, and are not meant to be comprehensive examples.
  • External Storage Framework - see here & here
    • Add-On Configuration - see here
    • Place Configuration - see here
  • Cartridges - see here
  • Analytics (coming soon) - see here
  • Producteev (no examples provided) - see here
    • Use OAuth 2.0 implementation as base model for functionality

 

Video Walk-Through

 

The following videos were recorded when the Jive SDK Java Jersey Edition was originally released.  While they may be some what dated, they still do a decent job walking through the project structure and design.

  • Note:  Until new ones can be recorded, please disregard all references to JBoss Weld, as that reference and CDI capability has been removed.

 

Brief Overview

Detailed Walk Through (40 minutes)

Attachments

    Outcomes