org.exist.http
Class RESTServer
java.lang.Object
org.exist.http.RESTServer
- public class RESTServer
- extends java.lang.Object
- Author:
- wolf
Constructor Summary |
RESTServer(java.lang.String formEncoding,
java.lang.String containerEncoding,
boolean useDynamicContentType)
|
Method Summary |
void |
doDelete(DBBroker broker,
XmldbURI path,
javax.servlet.http.HttpServletResponse response)
|
void |
doGet(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
Handle GET request. |
void |
doHead(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
|
void |
doPost(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
Handles POST requests. |
void |
doPut(DBBroker broker,
java.io.File tempFile,
XmldbURI path,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Handles PUT requests. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RESTServer
public RESTServer(java.lang.String formEncoding,
java.lang.String containerEncoding,
boolean useDynamicContentType)
doGet
public void doGet(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
throws BadRequestException,
PermissionDeniedException,
NotFoundException,
java.io.IOException
- Handle GET request. In the simplest case just returns the document or
binary resource specified in the path. If the path leads to a collection,
a listing of the collection contents is returned. If it resolves to a binary
resource with mime-type "application/xquery", this resource will be
loaded and executed by the XQuery engine.
The method also recognizes a number of predefined parameters:
- _xpath or _query: if specified, the given query is executed on the
current resource or collection.
- _howmany: defines how many items from the query result will be
returned.
- _start: a start offset into the result set.
- _wrap: if set to "yes", the query results will be wrapped into a
exist:result element.
- _indent: if set to "yes", the returned XML will be pretty-printed.
- _source: if set to "yes" and a resource with mime-type "application/xquery" is requested
then the xquery will not be executed, instead the source of the document will be returned.
Must be enabled in descriptor.xml with the following syntax
- _xsl: an URI pointing to an XSL stylesheet that will be applied to
the returned XML.
- Parameters:
broker
- request
- response
- path
-
- Throws:
BadRequestException
PermissionDeniedException
NotFoundException
java.io.IOException
doHead
public void doHead(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
throws BadRequestException,
PermissionDeniedException,
NotFoundException,
java.io.IOException
- Throws:
BadRequestException
PermissionDeniedException
NotFoundException
java.io.IOException
doPost
public void doPost(DBBroker broker,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
java.lang.String path)
throws BadRequestException,
PermissionDeniedException,
java.io.IOException
- Handles POST requests. If the path leads to a binary resource with
mime-type "application/xquery", that resource will be read and executed
by the XQuery engine. Otherwise, the request content is loaded and parsed
as XML. It may either contain an XUpdate or a query request.
- Parameters:
broker
- request
- response
- path
-
- Throws:
BadRequestException
PermissionDeniedException
java.io.IOException
doPut
public void doPut(DBBroker broker,
java.io.File tempFile,
XmldbURI path,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws BadRequestException,
PermissionDeniedException,
java.io.IOException
- Handles PUT requests. The request content is stored as a new resource at
the specified location. If the resource already exists, it is overwritten if the
user has write permissions.
The resource type depends on the content type specified in the HTTP header.
The content type will be looked up in the global mime table. If the corresponding
mime type is not a know XML mime type, the resource will be stored as a binary
resource.
- Parameters:
broker
- tempFile
- The temp file from which the PUT will get its contentpath
- The path to which the file should be storedrequest
- response
-
- Throws:
BadRequestException
PermissionDeniedException
java.io.IOException
doDelete
public void doDelete(DBBroker broker,
XmldbURI path,
javax.servlet.http.HttpServletResponse response)
throws PermissionDeniedException,
NotFoundException,
java.io.IOException
- Throws:
PermissionDeniedException
NotFoundException
java.io.IOException
Copyright (C) Wolfgang Meier. All rights reserved.