Beispiel #1
0
 @Override
 protected void onAfterRender() {
   if (app().isDebugMode()) {
     // restore Wicket debug tags
     Application.get().getMarkupSettings().setStripWicketTags(false);
   }
   super.onAfterRender();
 }
Beispiel #2
0
 @Override
 protected void onBeforeRender() {
   if (app().isDebugMode()) {
     // strip Wicket tags in debug mode for jQuery DOM traversal
     Application.get().getMarkupSettings().setStripWicketTags(true);
   }
   super.onBeforeRender();
 }
Beispiel #3
0
 public void error(
     String message, Throwable t, Class<? extends Page> toPage, PageParameters params) {
   if (t == null) {
     logger().error(message + " for " + GitBlitWebSession.get().getUsername());
   } else {
     logger().error(message + " for " + GitBlitWebSession.get().getUsername(), t);
   }
   if (toPage != null) {
     GitBlitWebSession.get().cacheErrorMessage(message);
     String relativeUrl = urlFor(toPage, params).toString();
     String absoluteUrl = RequestUtils.toAbsolutePath(relativeUrl);
     throw new RedirectToUrlException(absoluteUrl);
   } else {
     super.error(message);
   }
 }
Beispiel #4
0
  @Override
  protected void setHeaders(WebResponse response) {
    // set canonical link as http header for SEO (issue-304)
    // https://support.google.com/webmasters/answer/139394?hl=en
    response.setHeader("Link", MessageFormat.format("<{0}>; rel=\"canonical\"", getCanonicalUrl()));
    int expires = app().settings().getInteger(Keys.web.pageCacheExpires, 0);
    if (expires > 0) {
      // pages are personalized for the authenticated user so they must be
      // marked private to prohibit proxy servers from caching them
      response.setHeader("Cache-Control", "private, must-revalidate");
      setLastModified();
    } else {
      // use default Wicket caching behavior
      super.setHeaders(response);
    }

    // XRF vulnerability. issue-500 / ticket-166
    response.setHeader("X-Frame-Options", "SAMEORIGIN");
  }