Jive SDK - Java & Jersey Edition - Overview

Version 4

    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)