public Object invoke(final MethodInvocation invocation) throws Throwable {
   if (!logger.isDebugEnabled()) {
     return invocation.proceed();
   }
   final StringBuffer buf = new StringBuffer(100);
   buf.append(getTargetClass(invocation).getName());
   buf.append("#");
   buf.append(invocation.getMethod().getName());
   logger.debug("BEGIN " + buf);
   try {
     return invocation.proceed();
   } catch (Throwable t) {
     buf.append(" Throwable:").append(t);
     throw t;
   } finally {
     logger.debug("END " + buf);
   }
 }
  public FacesConfig configure() {
    List configs = new LinkedList();
    String path = getPath();
    if (logger_.isDebugEnabled()) {
      logger_.debug("target file path = " + path);
    }
    if (path == null) {
      return null;
    }
    String[] paths = StringUtil.split(path, FACES_CONFIG_DELIMETER);

    for (int i = 0; i < paths.length; i++) {
      final String targetPath = paths[i];
      final SaxHandlerParser parser = createSaxHandlerParser();
      InputStream is = resourceResolver_.getInputStream(targetPath.trim());
      try {
        configs.add(parser.parse(is, targetPath));
      } finally {
        InputStreamUtil.close(is);
      }
    }
    return FacesConfigUtil.collectAllFacesConfig(configs);
  }
 public void dispatch(String requestURI) throws IOException, FacesException {
   if (logger_.isDebugEnabled()) {
     logger_.debug("dispatch called.");
   }
 }
 /**
  * 指定されたExcelを読みデータセットとして返します。
  *
  * @param path Excelのパス
  * @param trimString 文字列に含まれる空白を取り除く場合<code>true</code>
  * @return Excel内のデータのデータセット表現
  */
 protected DataSet readXls(final String path, final boolean trimString) {
   if (logger.isDebugEnabled()) {
     logger.log("DSSR0104", new Object[] {path});
   }
   return dataAccessor.readXls(path, trimString);
 }