Caminho físico das classes - Tomcat vs. WebSphere

E aí pessoal, tudo bem?

Bom, tenho uma aplicação Web que possui uma função responsável por obter o caminho físico do diretório onde estão as classes compiladas.

Quando rodo a aplicação sob o Tomcat, tudo funciona normalmente (me retorna algo como “C:\tomcat5\webapps\app\WEB-INF\classes”). Atualmente tenho que colocar essa aplicação pra rodar sob WebSphere 6. Gerei um EAR da aplicação e fiz o deploy, tudo certo. A aplicação roda, mas todo módulo dependente da função que obtém o caminho físico acaba não funcionando corretamente pois essa função sempre retorna o caminho “/” no WebSphere.

O código que uso para obter essa informação é o seguinte:

      ClassLoader classLoader = instance.getClass().getClassLoader();
      URL url = classLoader.getResource("/");

      servletClassesPath = url.getPath(); // ou getFile();

Alguém conhece uma solução?

Tenta fazer algo do tipo:


ServletContext context = getServletContext();
String realPath = context.getRealPath("/");

Olha só:
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletContext.html#getRealPath(java.lang.String)