Porém, acontece uma exception dizendo que o contexto é ready-only!
:?: Como faço pra colocar essa várial no meu contexto?
Na verdade, eu estou só fazendo um teste com essa str, porque a minha intenção real, é colocar objetos de negócio para poderem ser acessados por todos na rede.
Ah, sim, com certeza… mas, no caso de se usar uma arquitetura de componentes “sem” ejb, isso seria util.
Agora, falando em EJB…
Você poderia me ajudar?
Estou começando um novo projeto e estou muito afim de usar ejb, porém, não sei muito a respeito… vou usar o JBoss, mas não sei muito a respeito dele também… tipo, como fazer deploy, etc… se você poder me ajudar com alguns ex pra JBoss, eu agradeço…
Voltando ao JNDI…
Você sabe como eu faço essa parada?
Valeu!
urubatan
quanto a exemplo de EJB
posso te mandar uns que tenho aqui (só para ver o código, pois utiliza o DB da empresa onde trabalho e não posso enviar a DDL
o deploy no JBoss é algo extremamente complexo, é só largar o archive da sua aplicação no diretório deploy do server que você startou, caso não saiba qual é, com certeza é o default
%JBOSS%serverdefaultdeploy
quanto a JNDI, faz muito tempo que não mexo com isto, mas posso dar uma olhada e postar um exemplo aqui
mas só no domingo, to indo para a praia agora
le-silva
Eu ficaria bastante feliz com os exemplos!
Eu tenho um pouco de dificuldade em saber o que eu coloco no .jar dos meus ejb’s. Veja se estou certo, seria algo assim:
Eu vi exemplos sem esses arquivos. O problema é que eu tenho só os exemplos de código, mas não tem nenhuma explicação pra eu entender melhor pra que serve cada coisa.
Estou levando um exmplo pra analisar no fim de semana… tomará que eu entenda os “por ques”!
Valeu cara, obrigado!
N
nferreira
Olá le-silva,
Acho que isso vai ajudar.
packagefoo.jndi.sample;importjavax.naming.*;importjava.util.Properties;importjavax.rmi.PortableRemoteObject;publicclassJNDIBindSample{privatestaticInitialContextopenInitialContext(Stringurl,Stringuser,Stringpassword)throwsException{Propertiesproperties=null;try{properties=newProperties();properties.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");properties.put(Context.PROVIDER_URL,url);if(user!=null){properties.put(Context.SECURITY_PRINCIPAL,user);properties.put(Context.SECURITY_CREDENTIALS,password==null?"":password);}returnnewInitialContext(properties);}catch(Exceptione){e.printStackTrace();throwe;}}publicstaticvoidmain(String[]args){try{InitialContextroot=openInitialContext("t3://10.112.75.100:11001","system","weblogic");ContexttestCtx=root.createSubcontext("teste");StringtestStr="Minha String 'remota'";testCtx.bind("testeStr",testStr);/* Note que só é necessario chamar de testStr */StringtestBoundObject1=(String)testCtx.lookup("testeStr");System.out.println(testBoundObject1);/* Porém apartir do root o nome completo */StringtestBoundObject2=(String)root.lookup("teste/testeStr");System.out.println(testBoundObject2);/* Desfaz tudo */testCtx.unbind("testeStr");root.destroySubcontext("teste");}catch(Exceptionex){ex.printStackTrace();}}}
JNDI é analogo ao um sistema de arquivos e diretorios onde cada context representa um diretorio e cada BoundObject um “arquivo”. Nota: Lógico que é muito mais complexo que isso, mas :!: :?: :!: :?:
Espero que ajuda. Fiz com WebLogic mas para utilizar no JBoss é so mudar o Hashtable das propriedades do InitialContext.