The documentation includes content on installing, administering, and using the application.

Be sure to visit the Jive Software web site for additional information about the application.

For the latest developer content and answers to development questions, visit the Developers guide on Jivespace.

Installing and Upgrading

System Requirements

Jive SBS includes an optimally-configured software stack that is designed to perform well and be easy to administer. Except for the operating system, it includes everything you'll need to get the application running and configured.

Installing on Linux

Instructions for installing the package using RPM.

Installing on Solaris

Instructions for installing the package using the package manager.

LDAP and Active Directory Guide

When you have your own LDAP or Active Directory repository, you can configure your community to integrate with it.

Clustering Support

This guide describes the clustering model, which allows the application to run on a group of servers.

 

Administering the Site

System Administrators' Guide

If you're a system administrator, use this guide to set up and configure the application using the admin console.

Platform Overview

The platform introduced in version 3 includes important changes that affect the way you install and administer the application. This topic provides an overview of those changes, the platform, and the tools that come with it.

Platform Run Book (Linux)

This document covers basic system-administration commands for managing the platform.

Platform Run Book (Solaris)

This document covers basic system-administration commands for managing the platform.

Application Management Command Reference

Use these commands to perform maintenance tasks on your managed instance. Except where noted, you'll find these in /usr/local/jive/bin.

Operations Cookbook

This section is intended to provide sample configurations and script examples common to long-term operation of a installation.

Fine-Tuning Performance

Through adjustments to caches, JVM settings, and more, you can make sure that the application is performing well.

Making Simple UI Changes

Through a simple user interface, you can change the site-wide logo and colors. This guide describes the basic, point-and-click way to customize the site's user interface.

Managing Users and Groups

If you're a system admin, user admin, or group admin, use this brief guide to learn how to use the admin console to add, remove, and edit accounts for users and groups.

System Properties Reference

System properties configure application-wide settings. Some of the settings correspond to configuration elements in the admin console user interface.

Using Community Everywhere

With Community Everywhere, you can embed discussion threads directly into existing news articles, blog posts or other content that would benefit from comments or discussions.

Localizing the Application

Use this guide to learn about how to localize your installation.

Working with Feeds

Use this guide to learn about the feeds (RSS and Atom) that the application makes available.

   

Managing Communities

Managing Spaces

If you're a space or system administrator, use this guide to learn about how to create and configure spaces, including setting up defaults for content and managing discussions and documents.

Managing Permissions

If you're a space or system administrator, use this guide to learn about granting permissions to people for access to content and administrative features.

Moderating Content

Someone assigned as a space's moderator can edit, approve or reject content before the content is published and visible to others.

Using the Application

Quick Tour

Welcome to the Tour! Use this tour to get a step-by-step view of some of the things you can do in the community. As you read through the tour, it will point out features and suggest things you can do to start putting the community to work for you and your team. Here are the steps:

Help

Use this list of frequently asked questions to get help on how to do things in your community. For a step-by-step tour, be sure to see the Quick Tour.

Designing Pages with Widgets

You can easily get some of the pages in the user interface to look the way you want to by using widgets to choose and arrange content.

Search Tips

Use these tips to get the most out of search.

   

Developers Community Documents

This is a snapshot of content you'll find in the Developers community on Jivespace. For the latest developer content and answers to development questions, be sure to visit the Developers community.

Application Architecture

The high-level overview describes the technologies that make up Jive SBS. The following illustration lists the key pieces; you'll find descriptions below.

Configuration: Frequently Asked Questions

This FAQ provides information on common tasks related to configuring the application, from logging to startup.

Core Javadocs

Building Extensions

Building Plugins

By building plugins, you can add new features to the application. This includes new widgets and other UI features, as well as back-end components such as web services or custom authentication providers.

Building Macros

This introduction gives you the basics on building macros -- tools to make it easier for people to add and format content through the content editor. Using the macros included by default, people can insert a document table of contents, quote selected text, and format text as special syntax such as Java and XML.

Building Widgets

This introduction gives you the basics on building widgets -- views for displaying content on customizable pages.

Widgets: Frequently Asked Questions

Answers to questions on developing and manipulating widgets.

Building Actions

You can build plugins that enhance Jive SBS with links to new functionality, additions to the admin console, and additions to the end user UI.

Integrating Action User Interface

You can integrate your plugins into the user interface by overriding and adding to the UI components that the application defines by default.

Plugin XML Reference

This reference describes the elements and attributes that make up a plugin's configuration XML file.

UI Components: Frequently Asked Questions

Questions and answers about the ui-components.xml file, used to configure user interface elements in the Jive SBS UI.

UI Components XML Reference

This reference describes the elements and attributes through which you can can UI components to Jive SBS. You use the elements described here in a plugin.xml file.

Upgrading Extensions to Version 2

Here's a run down of the changes you might need to make to get customizations written for version 1 working on version 2. This topic looks at upgrading actions, macros, widgets, themes, and web services (client and server components), and other customizations.

Content Type Framework

A new content type is actually made up of multiple (sometimes many) different classes. These define not only how users interact with its content, but also link the content type to application subsystems that add support for features found on other content types (including documents, discussion messages, blog posts, and so on).

Supporting Content Type Display on Container Lists

This topic describes how you can get instances of your content type to show up in UI set aside for them in containers such as spaces, projects, and social groups.

Supporting Content Type Display On Userbar Menus

Having your content type displayed on userbar menus is an important part of providing a user user experience that's consistent with other content in the application. The userbar is (almost) omnipresent list of navigation menus located (by default) at the top of the application's user interface.

Supporting Content Type Viewing and Creation

This topic describes how you can add support to let people view and create instances of your content type.

Supporting Content Type Searching

You can add support that allows people to find instances of your content type when searching. The content in this topic assumes you've implemented a manager class to locate content type instances based on their ID in the system.

Supporting Filtering Content Type Instances

You can add support that allows people to filter listed instances of your content type. With this support, people can filter instances by user, creation date, and modification date.

Supporting Comments in a Content Type

You can add support that allows people to add comments to instances of your content type. Along the way, you define the details of how comments should be handled by the application, including details about moderation, filtering, deletion, and more. The content in this topic assumes you've implemented a manager class to locate content type instances based on their ID in the system.

Supporting Tags in a Content Type

You can add support that allows people to add tags to instances of your content type. People can also browse or search for your content type by tag. The content in this topic assumes you've implemented a manager class to locate content type instances based on their ID in the system.

Displaying a Custom Icon for a Content Type

You can have the application display a different icon for included content types. To do that, you override SkinUtils.getJiveObjectIcon. Include your code where it will execute on application startup, or where it will execute when your plugin is initialized.

   

Front End : Themes, Feeds, and More

Themes Overview

Themes are a great way to make changes to the user interface when you don't need to add new functionality. With themes, you can customize the application's look and feel with your logo, colors, and typefaces.

Themes: Frequently Asked Questions

Answers about themes, the Jive SBS way to make user interface changes.

Customizing UI with the Theme Resource Kit

If you need to add sophisticated view logic in your header or footer, you can do more ambitious site-wide theming by starting with the resource kit. It includes a set of sample files you can tailor to your needs.

Advanced Themes Topics

You can build advanced themes that add or change CSS classes, map to specific parts of the UI, and change the structure of pages. The topics linked below describe how.

Mapping Themes to the UI

As you plan your customizations, their scope will mean a lot. Do you want the changes to be seen across the UI, only in a particular community, or only in selected patches of the UI reached by certain URLs? The scope decision will be one of the first you make.

Creating Custom CSS Classes in Themes

You can customize your community's CSS by adding or overriding CSS classes in a custom CSS FTL template file. You create a theme, create the custom template, add your CSS classes to the template, then map the theme to the UI.

Substituting Phrases in the UI

You can give other names to things people see in the user interface. For example, you can rename "Documents" and "Discussions" to "Articles" and "Conversations." You can make the substitutions in a simple way for the most common terms. There's also a more detailed way to do it.

Customizing UI Page Structure

You can change the structure of a page by customizing the Freemarker FTL template file that the page is rendered from. An FTL file defines the arrangement of UI elements on a page (or a section of a page), along with the data displayed on the page. The custom template is part of a theme that you map to the user interface.

FTL Templates and Descriptions

Here's a list of the FTL files you can customize when creating your theme. Each FTL file corresponds to a part of the user interface. In other words, to add text or HTML markup to the blog actions sidebar, you add it to template/blogs/view-sidebar.ftl. These files are listed in the admin console when you're editing a theme.

Themes: Best Practices

These suggestions and best practices can help make your work a little easier and help you avoid pitfalls.

Themes: Other Resources

This topic includes links to other information about technologies related to themes.

Feeds: Frequently Asked Questions

Answers to questions on consuming and creating feeds.

Feeds: Other Resources

Here are some resources, references, and APIs you will find helpful in modifying or consuming feeds in Jive SBS.

FreeMarker: Frequently Asked Questions

FreeMarker is the template framework used for user interface.

DWR: Frequently Asked Questions

Answers to common questions about DWR, the technology used to provide AJAX support.

Back End : Security, Database, Web Services

Authentication and Authorization

Jive SBS has multiple facilities to handle the three primary facets of network application security. This topic will discuss each and highlight APIs commonly of interest to developers customizing installations.

Example: Authentication and Authorization

This topic provides an overview of common customizations for version 2.0 and later. You'll find code samples and common strategies for integrating with third-party authentication systems (integration commonly referred to as single sign-on, or SSO).

Security: Frequently Asked Questions

Read Authentication and Authorization and then come back to this document.

Accessing the Database from a Plugin

You can add tables needed by your plugin to the application database. You do this by including a schema.xml file that describes the schema of your additions and by defining a Spring bean that represents access to the data from your Java code.

Database: Frequently Asked Questions

Answers to questions about Jive's use of JDBC, transactions, and other database tools.

REST Web Services Reference

This document list the web services that Jive SBS exposes via REST, or Representational State Transfer. This guide includes the following sections:

SOAP Web Services Development Guide

If you're looking to use SOAP-style web services to access Jive SBS, this basic information can get you started.

Web Services: A Security Primer

This document is intended for anyone that needs to develop a client to access version 2.5.x web services.

Application Database Schema

This document describes tables in the application database. The application database provides storage for core content activity, and optionally user data.

Analytics Database Schema

This document describes tables in the analytics database. The analytics data model is a star schema form.

Caching: Frequently Asked Questions

Caching in Jive SBS usually refers to the back-end distributed memory cache technology, backed by Oracle Coherence.  In addition, there is a page-level cache web filter, and some render-layer filtering, but this document does not address these.

 

Technologies and Tools

Spring: Frequently Asked Questions

Jive SBS uses various pieces of the Spring framework for dependency injection, security, data access, and more.

Struts: Frequently Asked Questions

Answers to questions on Jive's use of Struts, an open framework for supporting a model-view-controller architecture.

Maven: Start Here

Jive Software offers a Secure repository with credentialed access for partners and licensed customers wishing to do extensive custom development.

How-To: Install Maven

Step-by-step instructions for getting Maven up and running to support your development.

settings.xml - For Licensed Customers and Partners

Note: this Maven configuration provides access to Jive binaries and sources via the maven-secure.jivesoftware.com server; it requires login access.  See the bottom of the document where to put your login information.

Maven: How To Create a New Maven Project

This document will walk you through creating a new project with Maven.  You'll only need to go through this process once per project, at its inception.

Maven: How to Run

This document covers the basic build-run-compile steps Jive recommends when using the Maven build.  This assumes you've already looked at Maven: Start Here, How-To: Install Maven, and Maven: How To Create a New Maven Project .

Maven: How to Debug

You'll want to create a configuration for Tomcat.

Maven: How to use with IDEA

This document provides the steps for opening and running your new project with IDEA.  It assumes you have already set up your Maven project from the command line, using these steps: Maven: How To Create a New Maven Project .

Maven Command Line Cheatsheet