Caros, a última vez que utilizei o Tomcat foi em 2003, mas vamos lá.
Fiz o teste aqui em um Windows 7. Baixei a mesma versão do Tomcat que você está utilizando e fiz 02 testes utilizando linha de comando. Nos dois testes “zerei” as variáveis de ambiente CATALINA_BASE, CATALINA_HOME e CLASSPATH para tentar forçar a falha, dessa forma:
set CATALINA_BASE= <enter>
set CATALINA_HOME= <enter>
set CLASSPATH= <enter>
Ou seja, execução “nua e crua”.
No primeiro teste, descompactei o arquivo apache-tomcat-7.0.22.zip no meu diretório “c:\tmp” e fiz a chamada ao script startup.bat que fica no meu diretório bin. Funcionou perfeitamente (nenhum erro), pois o script startup.bat se encarrega de configurar as variáveis CATALINA_BASE, CATALINA_HOME e CLASSPATH de acordo com o diretório de instalação.
No segundo teste, descompactei o arquivo apache-tomcat-7.0.22.zip no meu diretório “c:\tmp\apache teste” (perceba que temos um espaço no nome do arquivo) e fiz a chamada ao script startup.bat que fica no meu diretório bin. Também funcionou perfeitamente.
Eu achei estranho o segundo teste, sei lá, talvez no Win 7 a coisa funcione de forma diferente, mas lembro de ter tido problemas devido a “caracteres de espaço” em nomes de diretório quando utilizava o JBoss para testes. Isso faz tempo e não era em todas as versões de Windows que isso ocorria.
Sei que o que disse aqui talvez não refresque em nada o seu problema, mas veja se o seu caso se enquadra no “segundo teste”. É bem provável que seja algo do tipo.
[]s!