Package org.apache.wicket.request

Examples of org.apache.wicket.request.Response


      // was created but any of the components or behaviors want to contribute
      // something to the header.
      header = new HtmlHeaderContainer(HtmlHeaderSectionHandler.HEADER_ID);
      add(header);

      Response orgResponse = getRequestCycle().getResponse();
      try
      {
        final StringResponse response = new StringResponse();
        getRequestCycle().setResponse(response);
View Full Code Here


  @Override
  public void beforeRender(final Component component)
  {
    final MarkupStream stream = getMarkupStream(component);
    final Response response = component.getResponse();
    stream.setCurrentIndex(0);

    boolean insideBorderMarkup = false;
    while (stream.hasMore())
    {
      MarkupElement elem = stream.get();
      stream.next();
      if (elem instanceof WicketTag)
      {
        WicketTag wTag = (WicketTag)elem;
        if (!insideBorderMarkup)
        {
          if (wTag.isBorderTag() && wTag.isOpen())
          {
            insideBorderMarkup = true;
            continue;
          }
          else
          {
            throw new WicketRuntimeException(
              "Unexpected tag encountered in markup of component border " +
                getClass().getName() + ". Tag: " + wTag.toString() +
                ", expected tag: <wicket:border>");
          }
        }
        else
        {
          if (wTag.isBodyTag())
          {
            break;
          }
          else
          {
            throw new WicketRuntimeException(
              "Unexpected tag encountered in markup of component border " +
                getClass().getName() + ". Tag: " + wTag.toString() +
                ", expected tag: <wicket:body> or </wicket:body>");
          }
        }
      }
      if (insideBorderMarkup)
      {
        response.write(elem.toCharSequence());
      }
    }

    if (!stream.hasMore())
    {
View Full Code Here

  @Override
  public void afterRender(final Component component)
  {
    final MarkupStream stream = getMarkupStream(component);
    final Response response = component.getResponse();

    while (stream.hasMore())
    {
      MarkupElement elem = stream.get();
      stream.next();
      if (elem instanceof WicketTag)
      {
        WicketTag wTag = (WicketTag)elem;
        if (wTag.isBorderTag() && wTag.isClose())
        {
          break;
        }
        else
        {
          throw new WicketRuntimeException(
            "Unexpected tag encountered in markup of component border " +
              getClass().getName() + ". Tag: " + wTag.toString() +
              ", expected tag: </wicket:border>");
        }
      }
      response.write(elem.toCharSequence());
    }
  }
View Full Code Here

        super.onComponentTagBody(markupStream, openTag);
      }
      else
      {
        RequestCycle cycle = getRequestCycle();
        Response response = cycle.getResponse();
        try
        {
          cycle.setResponse(NullResponse.getInstance());

          super.onComponentTagBody(markupStream, openTag);
View Full Code Here

    // written to its body. Thus we first write the output into a
    // StringResponse and if not empty, we copy it to the original
    // web response.

    // Temporarily replace the web response with a String response
    final Response webResponse = getResponse();

    try
    {
      final StringResponse response = new StringResponse();
      getRequestCycle().setResponse(response);

      IHeaderResponse headerResponse = getHeaderResponse();
      if (!response.equals(headerResponse.getResponse()))
      {
        getRequestCycle().setResponse(headerResponse.getResponse());
      }

      // In any case, first render the header section directly associated
      // with the markup
      super.onComponentTagBody(markupStream, openTag);

      // Render all header sections of all components on the page
      AbstractHeaderRenderStrategy.get().renderHeader(this, getPage());
      getHeaderResponse().close();

      // Automatically add <head> if necessary
      CharSequence output = response.getBuffer();
      if (output.length() > 0)
      {
        if (output.charAt(0) == '\r')
        {
          for (int i = 2; i < output.length(); i += 2)
          {
            char ch = output.charAt(i);
            if (ch != '\r')
            {
              output = output.subSequence(i - 2, output.length());
              break;
            }
          }
        }
        else if (output.charAt(0) == '\n')
        {
          for (int i = 1; i < output.length(); i++)
          {
            char ch = output.charAt(i);
            if (ch != '\n')
            {
              output = output.subSequence(i - 1, output.length());
              break;
            }
          }
        }
      }

      if (output.length() > 0)
      {
        if (renderOpenAndCloseTags())
        {
          webResponse.write("<head>");
        }

        webResponse.write(output);

        if (renderOpenAndCloseTags())
        {
          webResponse.write("</head>");
        }
      }
    }
    finally
    {
View Full Code Here

   */
  public static CharSequence renderComponent(final Component component)
  {
    RequestCycle requestCycle = RequestCycle.get();

    final Response originalResponse = requestCycle.getResponse();
    BufferedWebResponse tempResponse = new BufferedWebResponse(null);

    MarkupContainer oldParent = component.getParent();

    try
View Full Code Here

  @Override
  public IRequestHandler map(Exception e)
  {
    try
    {
      Response response = RequestCycle.get().getResponse();
      if (response instanceof WebResponse)
      {
        // we don't want to cache an exceptional reply in the browser
        ((WebResponse)response).disableCaching();
      }
View Full Code Here

   * @see org.apache.wicket.MarkupContainer#onRender()
   */
  @Override
  protected void onRender()
  {
    Response response = RequestCycle.get().getResponse();
    double widths[] = computeColumnWidths();

    NumberFormat nf = NumberFormat.getNumberInstance(Locale.ENGLISH);
    nf.setMaximumFractionDigits(0);
    nf.setMaximumFractionDigits(2);

    for (int i = 0; i < columns.size(); ++i)
    {
      Component component = components.get(i);
      IRenderable renderable = renderables.get(i);
      IColumn column = columns.get(i);

      // write the wrapping column markup
      response.write("<span class=\"b_\" style=\"width:" + nf.format(widths[i]) + "%\">");

      // determine whether we should render the left border
      if (!treeHasLeftColumn && (i == 0))
      {
        response.write("<span class=\"d_\">");
      }
      else
      {
        response.write("<span class=\"c_\">");
      }

      if (component != null) // is there a component for current column?
      {
        // render the component
        component.render();
      }
      else if (renderable != null) // no component - try to render
      // renderable
      {
        renderable.render(node, response);
      }
      else
      {
        // no renderable or component. fail
        throw new IllegalStateException(
          "Either renderable or cell component must be created for this noode");
      }

      // end of wrapping markup
      response.write("</span></span>\n");

      // does this component span over other columns
      int span = column.getSpan(node);
      if (span > 1)
      {
        // iterate through the columns and if any of them has a
        // component,
        // render the component to null response (otherwise the
        // component will
        // complain that it hasn't been rendered
        for (int j = 1; (j < span) && (i < components.size()); ++j)
        {
          ++i;
          if (components.get(i) != null)
          {
            Response old = RequestCycle.get().setResponse(NullResponse.getInstance());
            (components.get(i)).render();
            RequestCycle.get().setResponse(old);
          }
        }
      }
View Full Code Here

    {
      // we're in an ajax request, so we don't filter and separate stuff....
      runnable.run();
      return;
    }
    Response original = RequestCycle.get().setResponse(response);
    try
    {
      runnable.run();
    }
    finally
View Full Code Here

   */
  public AjaxRequestTarget(Page page)
  {
    Args.notNull(page, "page");
    this.page = page;
    Response response = RequestCycle.get().getResponse();
    encodingBodyResponse = new AjaxResponse(response);
    encodingHeaderResponse = new AjaxResponse(response);
  }
View Full Code Here

TOP

Related Classes of org.apache.wicket.request.Response

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.