Olá Fabiano,
    Muito obrigado! Suas dicas foram bem-vindas, porém acho que meu problema é
mais embaixo um pouco. Preciso usar JNI em uma servlet pois tenho que acessar
biblioteca que escrevi em C++. Porém ao colocar este código em uma servlet,
aparece o problema da variável de ambiente LD_LIBRARY_PATH, onde eu não estou
conseguindo setar esta variável de modo que o JRun veja-a. Com isso, ao tentar
rodar, sempre obtenho a mensagem de que não ha a biblioteca (.so) que compilei,
no path indicado.
Não sei se o JRun consegue acessar variáveis de ambiente. Se você ou alguém
souber de alguma coisa, peço ajuda!

Obrigado,
Um abraço,
Caique


Fabiano Carneiro wrote:

> Boa tarde Caique,
>
> Como ja passei por algumas experiencias utilizando JNI, abaixo mando algumas
> dicas:
>
> Antes de mais nada vc deverá entender o conceito geral do JNI (i.e. espero q
> já entenda!). Bem, o JNI (JAVA NATIVE INTERFACE), é a interface nativa do
> JAVA e está incluida dentro do JDK. Escrevendo programas usando JNI, vc se
> assegura q o seu codigo é completamente portável para qualquer plataforma. O
> JNI permite q codigos JAVA rodem dentro do JVM, para operar aplicacoes e
> bibliotecas escritas em outras linguagens de programacao, como C, C++ e
> assembly.
>
> Utilizei o JNI em uma determinada aplicacao onde eu nao podia codifica-la
> 100% em java, por isso criei metodos nativos chamando codigos de baixo-nivel
> em ASSEMBLY e C++.
>
> Vc pode chamar codigos escritos em C,C++ e ASSEMBLY (nunca utilizei JNI para
> chamar outros codigos), para programas escritos em JAVA declarando um metodo
> nativo, lendo a biblioteca q contem o codigo nativo, e chamando o codigo
> nativo.
>
> Abaixo envio um exemplo de como tudo pode funcionar:
>
> =====================================================
>
> import java.util.*;
>
> class ReadFile
> {
>    //aqui vc declara o codigo nativo
>    native byte[] loadFile(String name);
>
>    //aqui vc carrega a biblioteca
>    static
>    {
>       System.LoadLibrary("biblioteca_nativa");
>    }
>
>    public static void main(String arg[])
>    {
>       byte buf[];
>
>    //Cria a classe de instancia
>    ReadFile ArquivoMapeado = new ReadFile();
>
>    //chama o metodo nativo para carregar o ReadFile.java
>    buf = ArquivoMapeado.loadFile("ReadFile.java");
>
>   //imprime o conteudo de ReadFile.java
>   for (int i=0; i<buf.lenght;i++){
>        System.out.print((char)buf[i]);
>       }
>
>   }
>
> }
>
> =====================================================
>
> Espero ter ajudado.
>
> Abraços,
>
> []s
> Fabiano carneiro
> Projects Manager and JAVA Specialist
> CADMUS INFORMATICA
>
> =====================================================
>
> >From: "Jason Douglas de Oliveira" <[EMAIL PROTECTED]>
> >Reply-To: [EMAIL PROTECTED]
> >To: <[EMAIL PROTECTED]>
> >Subject: RES: [java-list] JNI+Servlet
> >Date: Mon, 21 May 2001 10:14:19 -0300
> >
> >Bom Dia Henrique.
> >
> >1º)Sim, é possível.
> >2º)Um exemplo de JNI é sempre complexo, pesquise no site da SUN que existe
> >exemplos lá.
> >
> >Abraços!!!
> >
> >
> >-----Mensagem original-----
> >De: Carlos Henrique Leclerc Oliveira [mailto:[EMAIL PROTECTED]]
> >Enviada em: sexta-feira, 18 de maio de 2001 17:53
> >Para: Java-List
> >Assunto: [java-list] JNI+Servlet
> >
> >
> >Acesso pelo menor preço do mercado! R$ 14,90 nos 3 primeiros meses!
> >ASSINE AGORA! http://www.bol.com.br/acessobol/
> >
> >
> >Pessoal, tudo bem?!
> >
> >Alguém saberia me dizer se é possível usar JNI dentro de um servlet? Se
> >for, poderia me passar um exemplo?
> >
> >Muito obrigado,
> >Caique
> >
> >--
> >Carlos Henrique L Oliveira
> >Tecnologia - UOL Inc.
> >tel +55 11 3038-9318
> >http://www.chlo.hpg.com.br
> >
> >
> >
> >------------------------------ LISTA SOUJAVA ----------------------------
> >http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
> >dúvidas mais comuns: http://www.soujava.org.br/faq.htm
> >regras da lista: http://www.soujava.org.br/regras.htm
> >para sair da lista: envie email para [EMAIL PROTECTED]
> >-------------------------------------------------------------------------
> >
> >
> >
> >------------------------------ LISTA SOUJAVA ----------------------------
> >http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
> >dúvidas mais comuns: http://www.soujava.org.br/faq.htm
> >regras da lista: http://www.soujava.org.br/regras.htm
> >para sair da lista: envie email para [EMAIL PROTECTED]
> >-------------------------------------------------------------------------
> >
>
> _________________________________________________________________________
> Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
>
> ------------------------------ LISTA SOUJAVA ----------------------------
> http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
> dúvidas mais comuns: http://www.soujava.org.br/faq.htm
> regras da lista: http://www.soujava.org.br/regras.htm
> para sair da lista: envie email para [EMAIL PROTECTED]
> -------------------------------------------------------------------------


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a