Wrapper, Filter and Servlet -
since new servlet programming, possible ask basic question.
i writing application filter gets response servlet, , computation it. found out need wrapper class catch response.
my question why wrapper needed? in advance!
1) lets first understand how request
, request filter
work:
when, lets client, makes request servlet, goes through container. container decides servlet request
needs forwarded to. means, container in total control.
container control makes implementing request filter easy because can let container know request
should go filter first , servlet. because container in total control. implementing request filter easy.
2) lets understand how response
, response filter
work:
when container invokes servlet service methods, passes 2 objects methods, request
, response
.
this means servlet in total control send response client. how ?
because response
object has pointer output stream writer
object. means, once servlet finishes processing request, straight write response
client using pointer output writer stream
object. so, servlet won't wait (middle men filter) , straight serve client. time, late intervene.
so, what's solutions ?
wrapper
our solution.
how wrapper works ?
so, before container passes real request
, response
objects servlet, wrap our response
object , send real request
, wrapped response
objects servlet service methods.
so now, servlet has pointer our wrapped output stream writer
object , not real response output stream writer
object. so, when servlet finishes request, write response our wrapped stream
, our wrapped response object
write real response writer stream
.
moral of story: use wrapper
when dealing response
. request
doesn't need wrapper concept.
Comments
Post a Comment