Extending Server Functionality with Remote APIs

Introduction: Remote APIs

As noted in the Introduction to Plumtree Enterprise Web Development, the Plumtree Enterprise Web combines portal, content management, collaboration, integration and search technologies. All Enterprise Web components can be extended and leveraged by custom applications.

The Plumtree Remote Client (PRC) provides an object-oriented way to call into the portal's SOAP API, which exposes elements of the Portal API. Essentially, the PRC is a remote subset of plumtree.dll. The PRC API frees you from serializing SOAP messages and minimizes the amount of data that travels between the portal and the remote server, improving performance. The PRC can be used to write applications that access the portal, including portlets, command-line tools, and virtually any Web application. For examples, see PRC Use Cases.

The PRC is included with both the Java and .NET versions of the Plumtree Enterprise Web Development Kit (EDK). The Java version includes Apache AXIS 1.0; the .NET version uses the platform-native SOAP client stack. Java clients can call .NET portals and vice-versa; the PRC takes care of the communication between AXIS and .NET.

Before beginning any development, you should understand the underlying system. The Plumtree Object Model is the foundation for the portal's interaction with remote servers. This page provides a conceptual overview. For specific details on Plumtree objects, see the portal server API on devcenter.plumtree.com.

The topics that follow explain how to use the PRC to implement a range of functionality, and provide examples and sample code.

These pages provide information and detailed instructions for extending Plumtree Server functionality. For an introduction to how the portal works, see the Portal Architecture Overview. For a full listing of development topics, see the table of contents. For a full list of interfaces and methods, see the EDK API documentation, available on the Developer Center (http://devcenter.plumtree.com).

Next: Plumtree Object Model