Java tutorial
//package com.java2s; /* * Copyright (C) 2012 Andrew Neal * Copyright (C) 2014 The CyanogenMod Project * Licensed under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with the * License. You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law * or agreed to in writing, software distributed under the License is * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the specific language * governing permissions and limitations under the License. */ public class Main { /** * make a useful message from an exception without the stack track */ public static String formatException(String message, Exception e) { StringBuilder builder = new StringBuilder(); if (message != null) { builder.append(message); if (e != null) { builder.append(" - "); } } if (e != null) { builder.append(e.getClass().getSimpleName()); String exceptionMessage = e.getMessage(); if (exceptionMessage != null) { builder.append(": "); builder.append(exceptionMessage); } for (Throwable cause = e.getCause(); cause != null; cause = cause.getCause()) { builder.append(" (cause "); builder.append(cause.getClass().getSimpleName()); String causeMessage = e.getMessage(); if (causeMessage != null) { builder.append(": "); builder.append(exceptionMessage); } builder.append(")"); } } return builder.toString(); } }