Example usage for org.apache.wicket.util.string Strings toString

List of usage examples for org.apache.wicket.util.string Strings toString

Introduction

In this page you can find the example usage for org.apache.wicket.util.string Strings toString.

Prototype

public static String toString(final Throwable throwable) 

Source Link

Document

Converts a Throwable to a string.

Usage

From source file:com.gitblit.wicket.freemarker.FreemarkerPanel.java

License:Apache License

/**
 * Either print or rethrow the throwable.
 *
 * @param exception//w  w w  .  j av a 2  s  .  com
 *            the cause
 * @param markupStream
 *            the markup stream
 * @param openTag
 *            the open tag
 */
private void onException(final Exception exception) {
    if (!throwFreemarkerExceptions) {
        // print the exception on the panel
        stackTraceAsString = Strings.toString(exception);
    } else {
        // rethrow the exception
        throw new WicketRuntimeException(exception);
    }
}

From source file:fiftyfive.wicket.util.LoggingUtils.java

License:Apache License

/**
 * Writes to the logger a best-guess at the most concise description of
 * the exception by first unwrapping it (see {@link #unwrap upwrap}), then
 * writes a large amount of information regarding the current Wicket state
 * (see {@link #dumpWicketState dumpWicketState}), and finally writes the
 * full stack traces of the entire exception chain.
 * <p>/*from ww w  .ja va 2  s  .co m*/
 * Example logger output:
 * <pre class="example">
 * ParseException: Unparseable date: "1xxx07"
 *
 * Request:
 *   URL       = wicket/bookmarkable/fiftyfive.wicket.examples.formtest.FormTestPage?0&initialMonth=10.2007&startDate=1xxx07&endDate=11.10.2007
 *   Handler   = RenderPageRequestHandler
 *   Component = FormTestPage
 *   Duration  = 485 milliseconds
 * Session:
 *   ID       = 1sxy938y7qoqq942z4pnuqdqt
 *   Info     = TODO: Your session info goes here
 *   Size     = 716 bytes
 *   Duration = 310 milliseconds
 * Application:
 *   Active Sessions = 1 (1 peak)
 *   Memory Usage    = 25M used, 40M free, 533M max
 *   IP Address      = 172.16.1.14
 *   Uptime          = 10.9 seconds
 * Headers:
 *   Host            = localhost:8080
 *   User-Agent      = Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-us) AppleWebKit/533.18.1 (KHTML, like Gecko) Version/5.0.2 Safari/533.18.5
 *   Accept          = application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,&#042;/&#042;;q=0.5
 *   Cache-Control   = max-age=0
 *   Accept-Language = en-us
 *   Accept-Encoding = gzip, deflate
 *   Cookie          = JSESSIONID=1217fv4qjpnbnv1ewzzmonevh
 *   Connection      = keep-alive
 * 
 * Message: Error calling method: public java.util.Date fiftyfive.wicket.examples.formtest.FormTestPage$1.getStartDate() on object: [ [Component id = calendar-control]]
 * 
 * Root cause:
 * 
 * java.text.ParseException: Unparseable date: "1xxx07"
 *      at java.text.DateFormat.parse(DateFormat.java:337)
 *      at fiftyfive.wicket.examples.formtest.FormTestPage$1.getStartDate(FormTestPage.java:82)
 *      at java.lang.reflect.Method.invoke(Method.java:597)
 *      at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.getValue(PropertyResolver.java:1112)
 *      at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.getValue(PropertyResolver.java:637)
 *      at org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:96)
 *      at org.apache.wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:122)
 *      at fiftyfive.wicket.datetime.RestrictedDatePicker.configure(RestrictedDatePicker.java:168)
 *      at org.apache.wicket.extensions.yui.calendar.DatePicker.renderHead(DatePicker.java:260)
 *      at org.apache.wicket.Component.renderHead(Component.java:2627)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:70)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:66)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:143)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:117)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:193)
 *      at org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:941)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy.renderChildHeaders(ParentFirstHeaderRenderStrategy.java:64)
 *      at org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy.renderHeader(AbstractHeaderRenderStrategy.java:125)
 *      at org.apache.wicket.markup.html.internal.HtmlHeaderContainer.onComponentTagBody(HtmlHeaderContainer.java:140)
 *      at org.apache.wicket.Component.renderComponent(Component.java:2518)
 *      at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1527)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1466)
 *      at org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1589)
 *      at org.apache.wicket.Page.onRender(Page.java:1139)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.Page.renderPage(Page.java:1289)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:131)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:199)
 *      at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:149)
 *      at org.apache.wicket.request.RequestHandlerStack.executeRequestHandler(RequestHandlerStack.java:84)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:206)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:248)
 *      at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:131)
 *      at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:184)
 *      at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
 *      at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
 *      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 *      at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
 *      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
 *      at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
 *      at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
 *      at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
 *      at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)
 *      at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
 *      at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
 *      at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
 *      at org.mortbay.jetty.Server.handle(Server.java:326)
 *      at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
 *      at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:926)
 *      at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
 *      at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
 *      at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
 *      at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
 *      at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
 * 
 * 
 * Complete stack:
 * 
 * org.apache.wicket.WicketRuntimeException: Error calling method: public java.util.Date fiftyfive.wicket.examples.formtest.FormTestPage$1.getStartDate() on object: [ [Component id = calendar-control]]
 *      at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.getValue(PropertyResolver.java:1116)
 *      at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.getValue(PropertyResolver.java:637)
 *      at org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:96)
 *      at org.apache.wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:122)
 *      at fiftyfive.wicket.datetime.RestrictedDatePicker.configure(RestrictedDatePicker.java:168)
 *      at org.apache.wicket.extensions.yui.calendar.DatePicker.renderHead(DatePicker.java:260)
 *      at org.apache.wicket.Component.renderHead(Component.java:2627)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:70)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:66)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:143)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:117)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:193)
 *      at org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:941)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy.renderChildHeaders(ParentFirstHeaderRenderStrategy.java:64)
 *      at org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy.renderHeader(AbstractHeaderRenderStrategy.java:125)
 *      at org.apache.wicket.markup.html.internal.HtmlHeaderContainer.onComponentTagBody(HtmlHeaderContainer.java:140)
 *      at org.apache.wicket.Component.renderComponent(Component.java:2518)
 *      at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1527)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1466)
 *      at org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1589)
 *      at org.apache.wicket.Page.onRender(Page.java:1139)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.Page.renderPage(Page.java:1289)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:131)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:199)
 *      at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:149)
 *      at org.apache.wicket.request.RequestHandlerStack.executeRequestHandler(RequestHandlerStack.java:84)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:206)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:248)
 *      at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:131)
 * 
 * java.lang.RuntimeException: java.text.ParseException: Unparseable date: "1xxx07"
 *      at fiftyfive.wicket.examples.formtest.FormTestPage$1.getStartDate(FormTestPage.java:87)
 *      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 *      at java.lang.reflect.Method.invoke(Method.java:597)
 *      at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.getValue(PropertyResolver.java:1112)
 *      at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.getValue(PropertyResolver.java:637)
 *      at org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:96)
 *      at org.apache.wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:122)
 *      at fiftyfive.wicket.datetime.RestrictedDatePicker.configure(RestrictedDatePicker.java:168)
 *      at org.apache.wicket.extensions.yui.calendar.DatePicker.renderHead(DatePicker.java:260)
 *      at org.apache.wicket.Component.renderHead(Component.java:2627)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:70)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy$1.component(ParentFirstHeaderRenderStrategy.java:66)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:143)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:161)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:117)
 *      at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:193)
 *      at org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:941)
 *      at org.apache.wicket.markup.renderStrategy.ParentFirstHeaderRenderStrategy.renderChildHeaders(ParentFirstHeaderRenderStrategy.java:64)
 *      at org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy.renderHeader(AbstractHeaderRenderStrategy.java:125)
 *      at org.apache.wicket.markup.html.internal.HtmlHeaderContainer.onComponentTagBody(HtmlHeaderContainer.java:140)
 *      at org.apache.wicket.Component.renderComponent(Component.java:2518)
 *      at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1527)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1466)
 *      at org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1589)
 *      at org.apache.wicket.Page.onRender(Page.java:1139)
 *      at org.apache.wicket.Component.render_(Component.java:2380)
 *      at org.apache.wicket.Component.render(Component.java:2307)
 *      at org.apache.wicket.Page.renderPage(Page.java:1289)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:131)
 *      at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:199)
 *      at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:149)
 *      at org.apache.wicket.request.RequestHandlerStack.executeRequestHandler(RequestHandlerStack.java:84)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:206)
 *      at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:248)
 *      at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:131)</pre>
 */
public static void logException(Logger logger, Exception e) {
    Args.notNull(logger, "logger");
    Args.notNull(e, "e");

    try {
        Throwable unwrapped = unwrap(e);

        logger.error(String.format("%s: %s%n%n%s%n%n%s", Classes.simpleName(unwrapped.getClass()),
                unwrapped.getMessage(), dumpWicketState(), Strings.toString(e)));
    } catch (Exception loggingEx) {
        // We should never arrive here, because it means that something
        // went terribly wrong in our logging code. Since our code failed,
        // fall back to simple logging so that Wicket error handling
        // can continue uninterrupted.
        LOGGER.error("Unexpected exception during logging", loggingEx);
        logger.error("RuntimeException", e);
    }
}

From source file:org.hippoecm.frontend.editor.plugins.ValueTemplatePlugin.java

License:Apache License

public ValueTemplatePlugin(IPluginContext context, IPluginConfig config) {
    super(context, config);

    final StringConverter stringModel = new StringConverter((JcrPropertyValueModel) getModel());
    final IEditor.Mode mode = IEditor.Mode.fromString(config.getString("mode"), IEditor.Mode.VIEW);
    switch (mode) {
    case EDIT://  w w  w .j av  a 2 s  .c om
        TextFieldWidget widget = new TextFieldWidget("value", stringModel);
        if (config.getString("size") != null) {
            widget.setSize(config.getString("size"));
        }
        if (config.getString("maxlength") != null) {
            widget.setMaxlength(config.getString("maxlength"));
        }
        add(widget);
        break;
    case COMPARE:
        final IModel<?> baseModel = context
                .getService(config.getString("model.compareTo"), IModelReference.class).getModel();
        final IModel<String> stringBaseModel = new LoadableDetachableModel<String>() {
            private static final long serialVersionUID = 1L;

            @Override
            protected String load() {
                return Strings.toString(baseModel.getObject());
            }

            @Override
            public void detach() {
                super.detach();
                baseModel.detach();
            }
        };
        add(new Label("value", new TextDiffModel(stringBaseModel, stringModel)).setEscapeModelStrings(false));
        break;
    default:
        add(new Label("value", stringModel));
    }
}

From source file:org.wicketstuff.rest.utils.wicket.bundle.StringConverterInterpolator.java

License:Apache License

@Override
protected String getValue(String variableName) {
    Object value = super.getValue(variableName);

    if (value == null) {
        return null;
    } else if (value instanceof String) {
        // small optimization - no need to bother with conversion
        // for String vars, e.g. {label}
        return (String) value;
    } else {//w w  w .  j a  v a 2 s.co  m
        IConverter converter = getConverter(value.getClass());
        if (converter == null) {
            return Strings.toString(value);
        } else {
            return converter.convertToString(value, getLocale());
        }
    }
}

From source file:ro.fortsoft.wicket.jade.JadePanel.java

License:Apache License

protected void onException(Exception e) {
    if (!throwJadeExceptions) {
        // print the exception on the panel
        stackTraceAsString = Strings.toString(e);
    } else {//from www  . j  av a 2  s. c o m
        // rethrow the exception
        throw new WicketRuntimeException(e);
    }
}