/** * @param capabilitiesManager * handling export of capabilities, never <code>null</code> * @param exceptionsManager * used to serialize exceptions, never <code>null</code> */ public WMSController130( CapabilitiesManager capabilitiesManager, ExceptionsManager exceptionsManager ) { super( exceptionsManager ); this.capabilitiesManager = capabilitiesManager; EXCEPTION_DEFAULT = "XML"; EXCEPTION_BLANK = "BLANK"; EXCEPTION_INIMAGE = "INIMAGE"; exceptionSerializer = new PreOWSExceptionReportSerializer( EXCEPTION_MIME ); }
@Override public void serializeException( HttpResponseBuffer response, OWSException exception ) throws IOException, XMLStreamException { response.reset(); response.setCharacterEncoding( "UTF-8" ); response.setContentType( mimeType ); setExceptionStatusCode( response, exception ); serializeExceptionToXML( response.getXMLWriter(), exception ); }
private XMLExceptionSerializer getDefaultExceptionSerializer() { List<String> offeredVersions = getOfferedVersions(); if ( offeredVersions.contains( VERSION_200.toString() ) ) { return new OWS110ExceptionReportSerializer( VERSION_200 ); } else if ( offeredVersions.contains( VERSION_110.toString() ) ) { return new OWS100ExceptionReportSerializer(); } return new PreOWSExceptionReportSerializer( "application/vnd.ogc.se_xml" ); }
@Override public XMLExceptionSerializer getExceptionSerializer( Version requestVersion ) { XMLExceptionSerializer serializer = getDefaultExceptionSerializer(); if ( VERSION_100.equals( requestVersion ) ) { serializer = new PreOWSExceptionReportSerializer( "application/vnd.ogc.se_xml" ); } else if ( VERSION_110.equals( requestVersion ) ) { serializer = new OWS100ExceptionReportSerializer(); } else if ( VERSION_200.equals( requestVersion ) ) { serializer = new OWS110ExceptionReportSerializer( VERSION_200 ); } return serializer; }