Como procuro uma fonte de dados JNDI de fora de um contêiner da web?

Eu tenho o seguinte ambiente configurado:

Java 1.5Sun Application Server 8.2Oracle 10 XEStruts 2Hibernate

Estou interessado em saber como posso escrever código para um cliente Java (ou seja, fora de um aplicativo da Web) que possa fazer referência à fonte de dados JNDI fornecida pelo servidor de aplicativos.

As portas do Sun Application Server têm todos os padrões. Há uma fonte de dados JNDI chamada jdbc / xxxx na configuração do servidor, mas notei que a configuração do Hibernate para o aplicativo Web usa o nome java: comp / env / jdbc / xxxx.

A maioria dos exemplos que eu vi até agora envolve código como

Context ctx = new InitialContext();
ctx.lookup("jdbc/xxxx");

Mas parece que estou usando o nome JNDI errado ou preciso configurar um jndi.properties ou outro arquivo de configuração para apontar corretamente para um ouvinte? Eu tenho appserv-rt.jar do Sun Application Server, que possui um jndi.properties, mas parece que não ajuda.

Há uma pergunta semelhante aqui, mas ela não fornece nenhum código / refere-se a obter que o iBatis obtenha a fonte de dados JNDI automaticamente:Acessando fonte de dados de fora de um contêiner da Web (por meio do JNDI)

questionAnswers(5)

yourAnswerToTheQuestion