package com.inventigo.misc; import java.net.*; import java.io.*; import java.util.*; /** * This class helps start Tomcat without specifying the full path to Tomcat's * configuration directory when it is started from JBuilder. */ public class Tomcat { // classpath suffix: /webapps/app/WEB-INF/classes private final static String PATH_SUFFIX=File.separator+"webapps"+File.separatorChar+"app"+File.separatorChar+"WEB-INF"+File.separatorChar+"classes"; public static void main(String[] args) { if (System.getProperty("catalina.home")==null) { String classpath=System.getProperty("java.class.path"); StringTokenizer tokenizer=new StringTokenizer(classpath, File.pathSeparator); String home=null; while (!(home=tokenizer.nextToken()).endsWith(PATH_SUFFIX)) { // looking for a suffix if (!tokenizer.hasMoreTokens()) { System.err.println("!! Cannot find a classpath directory ending with '"+PATH_SUFFIX+"'"); return; } } home=home.substring(0, home.length()-PATH_SUFFIX.length()); System.out.println("catalina.home='"+home+'\''); System.setProperty("catalina.home", home); } org.apache.catalina.startup.Bootstrap.main(args); } }