| org.geoserver.ows.Dispatcher
Dispatcher | public class Dispatcher extends AbstractController (Code) | | Dispatches an http request to an open web service (OWS).
An OWS request contains three bits of information:
- The service being called
- The operation of the service to execute
- The version of the service ( optional )
Additional, an OWS request can contain an arbitray number of additional
parameters.
An OWS request can be specified in two forms. The first form is known as "KVP"
in which all the parameters come in the form of a set of key-value pairs.
Commonly this type of request is made in an http "GET" request, the parameters
being specified in the query string:
http://www.xyz.com/geoserver?service=someService&request=someRequest&version=X.Y.Z¶m1=...¶m2=...
This type of request can also be made in a "POST" request in with a
mime-type of "application/x-www-form-urlencoded".
The second form is known as "XML" in which all the parameters come in the
form of an xml document. This type of request is made in an http "POST"
request.
<?xml version="1.0" encoding="UTF-8"?>
<SomeRequest service="someService" version="X.Y.Z">
<Param1>...</Param1>
<Param2>...</Param2>
...
</SomeRequest>
When a request is received, the service the version parameters
are used to locate a service desciptor, an instance of
Service . With
the service descriptor, the request parameter is used to locate the
operation of the service to call.
author: Justin Deoliveira, The Open Planning Project, jdeolive@openplans.org |
Inner Class :static class Request | |
Method Summary | |
Operation | dispatch(Request req, Service serviceDescriptor) | void | exception(Throwable t, Service service, Request request) | Object | execute(Request req, Operation opDescriptor) | KvpRequestReader | findKvpRequestReader(Class type) | ServiceStrategy | findOutputStrategy(HttpServletResponse response) | Service | findService(String id, String ver) | XmlRequestReader | findXmlReader(String namespace, String element, String ver) | public OperationInterceptor | getSecurityInterceptor() | protected ModelAndView | handleRequestInternal(HttpServletRequest httpRequest, HttpServletResponse httpResponse) | Request | init(Request request) | BufferedInputStream | input(File cache) | public boolean | isCiteCompliant() | Collection | loadKvpRequestReaders() | Collection | loadServices() | Collection | loadXmlReaders() | String | lookupRequestBeanProperty(Object requestBean, String property, boolean allowDefaultValues) | String | normalize(String value) | void | parseKVP(Request req) | Object | parseRequestKVP(Class type, Request request) | Object | parseRequestXML(Object requestBean, BufferedReader input, Request request) | protected void | preprocessRequest(HttpServletRequest request) | Map | readOpContext(HttpServletRequest request) | Map | readOpPost(BufferedReader input) | BufferedReader | reader(HttpServletRequest httpRequest) | void | response(Object result, Request req, Operation opDescriptor) | Service | service(Request req) | public void | setCiteCompliant(boolean citeCompliant) Sets the flag to control wether the dispatcher is cite compliante. | public void | setSecurityInterceptor(OperationInterceptor interceptor) |
citeCompliant | boolean citeCompliant(Code) | | flag to control wether the dispatcher is cite compliant
|
getSecurityInterceptor | public OperationInterceptor getSecurityInterceptor()(Code) | | Allows setting up a security interceptor that will allow security checks around
service invocations
|
isCiteCompliant | public boolean isCiteCompliant()(Code) | | |
lookupRequestBeanProperty | String lookupRequestBeanProperty(Object requestBean, String property, boolean allowDefaultValues)(Code) | | |
setCiteCompliant | public void setCiteCompliant(boolean citeCompliant)(Code) | | Sets the flag to control wether the dispatcher is cite compliante.
If set to true , the dispatcher with throw exceptions when
it encounters something that is not 100% compliant with CITE standards.
An example would be a request which specifies the servce in the context
path: '.../geoserver/wfs?request=...' and not with the kvp '&service=wfs'.
Parameters: citeCompliant - true to set compliance,false to unset it. |
|
|