SOAP APIs
SourceForge exposes a subset of the APIs defined by the application server as web services, through the SOAP protocol. A SOAP proxy server and a SOAP API layer, both running on Apache Axis, expose a set of web services representing each SourceForge application.
The SOAP server provides the following functions:
- Provides web services by accepting SOAP requests from the clients
- Performs SOAP client authentication
- Implements SourceForge role-based access control (RBAC) and caching service
- Accesses the application server via RMI stubs
CollabNet SourceForge Enterprise Soap Server Architecture
Working with WSDL
WSDL is an XML document used to describe and locate web services, and provides a simple interface to SOAP. A WSDL file for a service fully describes the service APIs and data structures, and is used by various tools to automatically generate convenient language specific wrapper classes or functions.
For Java programmers, a set of Java wrapper classes for CollabNet SourceForge Enterprise (CSFE) 5.1 SOAP services are included in the SDK tool kit for your convenience.
For Microsoft-based programming languages in the .NET family, .a .NET SDK is also available from CollabNet to enable .NET programmers to use the SourceForge API without having to use .NET’s tools for generating local proxy objects.
For Perl programmers, an SDK is available at: http://sfee.open.collab.net/sf/projects/perlsdk
For programming in other languages, such as Python, several WSDL tools are available to assist in generating local proxy objects. Axis and Apache SOAP provide tools to generate stubs if no WSDL tool is available. Programmers must read the WSDL definitions and manually construct all calls.
You can access the WSDL associated with any service using the following URL:
http://<sourceforge-server>/ce-soap50/services/<service-name>?wsdl
<sourceforge-server> is the name of the server running CSFE 5.
<service-name> is the name of the service (SourceForge, DocumentApp, TrackerApp, etc.). For example:
https://forge.collab.net/ce-soap50/services/ScmApp?wsdl
SourceForge SOAP services
Access to various SourceForge functions are provided by the following SOAP services: Examples for working with each service are provided in the following chapters.
| |
Service |
|
|
|
Description |
|
| |
DiscussionApp |
|
|
|
Manages the activities and items related to forums |
|
| |
| |
DocumentApp |
|
|
|
Manages the activities and items related to documents |
|
| |
| |
FileStorageApp and SimpleFileStorageApp |
|
|
|
Manage file uploads and downloads |
|
| |
| |
FrsApp |
|
|
|
Manages the activities and items related to file releases |
|
| |
| |
IntegrationDataApp |
|
|
|
Manages the activities and items related to integrations with external applications. |
|
| |
| |
NewsApp Manages |
|
|
|
The activities and items related to news |
|
| |
| |
RbacApp Manages |
|
|
|
The activities and items related to role-based access control |
|
| |
| |
ScmApp Manages |
|
|
|
The activities and items related to software configuration management (SCM.) |
|
| |
| |
SourceForge |
|
|
|
Manages the activities and items related to login, users, and projects. Must be accessed before ccessing any other service |
|
| |
| |
TaskApp |
|
|
|
Manages |
|
| |
| |
The activities and items related to tasks. |
|
|
|
|
|
| |
| |
TrackerApp |
|
|
|
Manages the activities and items related to trackers and tracker artifacts. |
|
| |
| |
WikiApp Manages the activities and items related to Wikis. |
|
|
|
|
|
Examples for working with each service are provided here and in the SDK.
SOAP client libraries
The following libraries are necessary for Java-based SOAP clients to compile and run correctly. All libraries listed in this section must be included within the CLASSPATH. All libraries are available in the CSFE 5 SDK
- Axis 1.4
- axis.jar
- commons-discovery.jar
- commons-logging.jar
- jaxrpc.jar
- log4j-1.2.8.jar
- saaj.jar
- Java Mail APIs
- Java Activation Framework
- CSFE 5 SDK
Working with .NET
For developers programming using Microsoft® .NET, the CSFE 5 SDK provides a “convenience” library. The convenience library consists of a facade for performing CSFE back-end operations from the .NET framework layer. This facade allows developers to use common .NET constructs when programming CSFE, which otherwise would need to be done manually when interacting directly with the SOAP layer.
All of the .NET SDK material is available on the sfee.open.collab.net website at:
http://sfee.open.collab.net/sf/frs/do/listReleases/projects.microsoft_integration_tools/frs.sdk
The .NET SDK has been updated for 5.1.
Getting the Software
If you are a CollabNet customer you can develop your integration by directly accessing the web services of your CollabNet SourceForge Enterprise instance. However, CollabNet advices you install the CollabNet SourceForge Enterprise on a separate server and use that environment to develop and test your integration. The download is available as a VMware image. Installation support for the download is available in a dedicated support project on sfee.open.collab.net.
Download CollabNet SourceForge Enterprise
Resources on openCollabNet
openCollabNet provides you with all the resources you need to build a CollabNet SourceForge Enterprise Integration. On the CollabNet SourceForge Enterprise Build It page you can find:
- A zip file with the entire SDK
- For each API, its methods and functions
- Javadocs for each API
- Samples
- A discussion forum to post your questions, answer somebody else's or discuss the roadmap with CollabNet engineers
Start a community project
You want to integrate SEE with a tool your developers use daily. Other CollabNet customers might have the same need. Why not start a joint project then? You can request a project workspace on openCollabNet and together with others develop extended functionality around the CollabNet platform. If you want to start your own project, send us an email with your ideas.
Partnering with CollabNet
Independent software vendors building extensions to CollabNet SourceForge Enterprise can join the CollabNet Partner Program. The CollabNet Partner Program provides technical, business and marketing resources to successfully develop and market your integration with the CollabNet platform.
Learn about the CollabNet Partner Program
The collabXchange
The collabXchange is CollabNet's marketplace for tools that integrate with the CollabNet platform or Subversion. If you built a tool that extends CollabNet SourceForge Enterprise, get it listed for others to discover, download and use.
Learn more about getting listed on the collabXchange