
#
# CoyoteConnector
#

coyoteConnector.alreadyInitialized=The connector has already been initialized
coyoteConnector.alreadyStarted=The connector has already been started
coyoteConnector.cannotRegisterProtocol=Cannot register MBean for the Protocol
coyoteConnector.notStarted=Coyote connector has not been started
coyoteConnector.protocolHandlerDestroyFailed=Protocol handler destroy failed: {0}
coyoteConnector.protocolHandlerInitializationFailed=Protocol handler initialization failed: {0}
coyoteConnector.protocolHandlerInstantiationFailed=Protocol handler instantiation failed: {0}
coyoteConnector.protocolHandlerStartFailed=Protocol handler start failed: {0}
coyoteConnector.protocolRegistrationFailed=Protocol JMX registration failed
coyoteConnector.protocolHandlerPauseFailed=Protocol handler pause failed
coyoteConnector.protocolHandlerResumeFailed=Protocol handler resume failed

#
# CoyoteAdapter
#

coyoteAdapter.service=An exception or error occurred in the container during the request processing

#
# CoyoteResponse
#

coyoteResponse.getOutputStream.ise=getWriter() has already been called for this response
coyoteResponse.getWriter.ise=getOutputStream() has already been called for this response
coyoteResponse.resetBuffer.ise=Cannot reset buffer after response has been committed
coyoteResponse.sendError.ise=Cannot call sendError() after the response has been committed
coyoteResponse.sendRedirect.ise=Cannot call sendRedirect() after the response has been committed
coyoteResponse.setBufferSize.ise=Cannot change buffer size after data has been written

#
# CoyoteRequest
#

coyoteRequest.getInputStream.ise=getReader() has already been called for this request
coyoteRequest.getReader.ise=getInputStream() has already been called for this request
coyoteRequest.sessionCreateCommitted=Cannot create a session after the response has been committed
coyoteRequest.setAttribute.namenull=Cannot call setAttribute with a null name
coyoteRequest.listenerStart=Exception sending context initialized event to listener instance of class {0}
coyoteRequest.listenerStop=Exception sending context destroyed event to listener instance of class {0}
coyoteRequest.attributeEvent=Exception thrown by attributes event listener
coyoteRequest.postTooLarge=Parameters were not parsed because the size of the posted data was too big. Use the maxPostSize attribute of the connector to resolve this if the application should accept large POSTs.


#
# MapperListener
#

mapperListener.registerContext=Register Context {0}
mapperListener.unregisterContext=Unregister Context {0}
mapperListener.registerWrapper=Register Wrapper {0} in Context {1}



