code: public static ScopedResponse getScopedResponse( HttpServletResponse realResponse,
                                                      ScopedRequest scopedRequest )
      {
          assert ! ( realResponse instanceof ScopedResponse );
          
          String responseAttr = getScopedName( OVERRIDE_RESPONSE_ATTR,
                                                                        scopedRequest.getScopeKey() );
          HttpServletRequest outerRequest = scopedRequest.getOuterRequest();
          ScopedResponse scopedResponse = ( ScopedResponse ) outerRequest.getAttribute( responseAttr );
          
          //
          // If it doesn't exist, create it and cache it.
          //
          if ( scopedResponse == null )
          {
              scopedResponse = new ScopedResponseImpl( realResponse );
              outerRequest.setAttribute( responseAttr, scopedResponse );
          }
          
          return scopedResponse;
      }
docs: Get the cached wrapper servlet response.  If none exists, creates one and caches it.
  
  @param realResponse the "real" (outer) ServletResponse, which will be wrapped.
  @param scopedRequest the ScopedRequest returned from {@link #getScopedRequest}.
  @return the cached (or newly-created) ScopedResponse.