NYCJava.net Main Page

About NYCJava.net JUG

Java Study Groups:
Java Mobile
SCJP 6 (Programmer Cert.)
Design Patterns
SCEA 5 (Architect Cert.)
Java Enterprise Study Group


Sponsor of the Skylight1
open source project
Location Sponsor:
http://www.nycjava.net/JSPWiki/pace.jpg

A member SIG of
http://nypc.org

Sponsor of the
NYC Java Meetup
http://www.nycjava.net/JSPWiki/meetup.png

help support NYC Java:
http://cafepress.com/nycjava
http://www.nycjava.net/JSPWiki/mug.jpg http://www.nycjava.net/JSPWiki/tshirt.jpg

Special thanks to:
Sun Microsystems
Prentice Hall
O'Reilly
JetBrains
Apress
and NYPC!

Book Reviews
Articles
Java Links
Java Jobs
Humor
About Duke
System Info

Find pages
About this Wiki
Wiki Quick Start
WikiEtiquette
Set your name in
UserPreferences

Edit this page



[RSS]

Wiki RPC Interface


JSPWiki comes with a XML-RPC interface. For more information, see:

XML-RPC Standard API

Here is now the API as of v1.6.12 (the command prefix being wiki.).

The default URL for this API is <your-wiki-url>/RPC2

  • array getRecentChanges( Date timestamp ): Get list of changed pages since timestamp, which should be in UTC. The result is an array, where each element is a struct:
    • name (string) : Name of the page. The name is UTF-8 with URL encoding to make it ASCII.
    • lastModified (date) : Date of last modification, in UTC.
    • author (string) : Name of the author (if available). Again, name is UTF-8 with URL encoding.
    • version (int) : Current version.
  • A page MAY be specified multiple times. A page MAY NOT be specified multiple times with the same modification date.
  • int getRPCVersionSupported(): Returns 1 with this version of the JSPWiki API.
  • base64 getPage( String pagename ): Get the raw Wiki text of page, latest version. Page name must be UTF-8, with URL encoding. Returned value is a binary object, with UTF-8 encoded page data.
  • base64 getPageVersion( String pagename, int version ): Get the raw Wiki text of page. Returns UTF-8, expects UTF-8 with URL encoding.
  • base64 getPageHTML( String pagename ): Return page in rendered HTML. Returns UTF-8, expects UTF-8 with URL encoding.
  • base64 getPageHTMLVersion( String pagename, int version ): Return page in rendered HTML, UTF-8.
  • array getAllPages(): Returns a list of all pages. The result is an array of strings, again UTF-8 in URL encoding.
  • struct getPageInfo( string pagename ) : returns a struct with elements
    • name (string): the canonical page name, URL-encoded UTF-8.
    • lastModified (date): Last modification date, UTC.
    • author (string): author name, URL-encoded UTF-8.
    • version (int): current version
  • struct getPageInfoVersion( string pagename, int version ) : returns a struct just like plain getPageInfo(), but this time for a specific version.
  • array listLinks( string pagename ): Lists all links for a given page. The returned array contains structs, with the following elements:
    • page (string) : The page name or URL the link is to.
    • type (int) : The link type. This is a string, with the following possible values:
      • "external" : The link is an external hyperlink
      • "local" : This is a local Wiki name for hyperlinking

As you can see, all data is returned in a base64 -type in UTF-8 encoding, regardless of what JSPWiki preference actually is. Also, all incoming or outcoming strings are really UTF-8, but they have been URL-encoded so that the XML-RPC requirement of ASCII is fulfilled.

The UTF-8 API

This is exactly as the upper API, except that ALL strings should be encoded in UTF-8. Also, instead of base64 type, all methods returning page data return UTF-8 format strings.

This does break the XML-RPC spec somewhat, but for ease of use I think it is important to serve both models. Use which one you like :-).

The default URL for the UTF-8 XML-RPC API is

<your-wiki-url>/RPCU

Errors

All methods which handle a page in any way can return a Fault. Current fault codes are:

  • 1 : No such page was found.



Go to top   Edit this page   More info...   Attach file...
This page last changed on 20-Oct-2005 11:18:18 PDT by unknown.