vc est� usando camadas web-ejb na mesma m�quina?

se n�o : as propriedades que vc est� setando parecem incorretas, olha o que eu uso (com arquivo jndi.properties separado) :

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.provider.url=jnp://@MYIP@:1099
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces

o MYIP � uma propriedade trocada em tempo de deploy... � o seu IP :)



Nilseu Padilha wrote:
E ai pessoal,


mudei temporariamente de estrategia. estou chamando o EJB do servlet. aqui vao os XDoclets do ejb e do servlet:

SESSION BEAN:


/**
* Created 23/09/2002 16:29:32
* Code generated by the Forte for Java EJB Module * @author Administrator
*
* @ejb:bean name="AgendaBusiness/UsuarioSessionFacadeEJBean"
* display-name="Customer Session"
* type="Stateless"
* view-type="remote"
* jndi-name="ejb/AgendaBusiness/UsuarioSessionFacadeEJBean"
*
* @ejb:interface remote-class="AgendaBusiness.UsuarioSessionFacadeRemote" extends="javax.ejb.EJBObject"
* local-class="AgendaBusiness.UsuarioSessionFacadeLocal"
* generate="local"
*
* @ejb:home remote-class="AgendaBusiness.UsuarioSessionFacadeHome" extends="javax.ejb.EJBHome" * local-class="AgendaBusiness.UsuarioSessionFacadeLocalHome"
* generate="local"
*
* @jboss:container-configuration name="Standard Stateless SessionBean"
*/


SERVLET

/**
* @author Nilseu Padilha
* @version $Revision: 1.1 $
*
* @web:servlet name="UsuarioController"
* display-name="UsuarioControler"
*
*@web:servlet-mapping url-pattern="/UsuarioController"
*
*@web.ejb-ref name="ejb/AgendaBusiness/UsuarioSessionFacadeEJBean"
* type="Session"
* home="AgendaBusiness.UsuarioSessionFacadeHome"
* remote="AgendaBusiness.UsuarioSessionFacadeRemote"
* link="AgendaBusiness/UsuarioSessionFacadeEJBean"
* description="A test reference to the UsuarioSessionFacadeEJBean EJB"
*
*@jboss:ejb-ref-jndi ref-name="ejb/AgendaBusiness/UsuarioSessionFacadeEJBean"
* jndi-name="ejb/AgendaBusiness/UsuarioSessionFacadeEJBean"
*
*/


De acordo com os samples e a documentacao do XDoclet esta tudo aparentemente ok. Estou gerando arquivos ejb-jar e web.xml alem dos proprios do jboss sem problema, incluindo ejb-references. o problema esta na hora que eu chamo o ejb: funciona perfeitamente no client mas no servlet gera uma excecao cavernosa "ejb not bound" no momento do context.lookup. Qulaquer especulacao sera bem-vinda.

valeu.

O codigo de chamada:

response.setContentType("text/html");
java.io.PrintWriter out = response.getWriter();
try{


InitialContext context=null;
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY
,"org.jnp.interfaces.NamingContextFactory");
env.put(Context.PROVIDER_URL, "presto:1099");
env.put("java.naming.factory.url.pkgs"
,"org.jboss.naming:org.jnp.interfaces");
context = new InitialContext(env);

Object ref = null;
out.println("<p>");
out.println(ref);
out.println("<p>"+"java:/ejb/AgendaBusiness/UsuarioSessionFacadeEJBean"+"<p>");
ref = context.lookup("java:/ejb/AgendaBusiness/UsuarioSessionFacadeEJBean");
out.println("<p>");
out.println(ref);

AgendaBusiness.UsuarioSessionFacadeHome usuarioHome = (AgendaBusiness.UsuarioSessionFacadeHome)
PortableRemoteObject.narrow (ref, AgendaBusiness.UsuarioSessionFacadeHome.class);
// UsuarioSessionFacadeHome usuarioHome = (UsuarioSessionFacadeHome) context.lookup
("ejb/AgendaBusiness/UsuarioSessionFacadeEJBean");

AgendaBusiness.UsuarioSessionFacadeRemote usuario = usuarioHome.create();

Object[] usuarios = usuario.findAll();
out.println("<p>");
System.out.println("Teste findByUsername");
out.println("<p>");
out.println(usuario.findByUsername("ADMIN"));
out.println("<p>");
//System.out.println("Teste findTeste ["+ usuario.findTeste() +"]");
out.println("Teste findAll");
for (int i = 0; i < usuarios.length; ++i){
out.println("<p>");
out.println(usuarios[i]);
}
}catch (Exception e){
out.println("<p>");
e.printStackTrace(out);
}

e a excecao:

I'm alive!!!
null
java:/ejb/AgendaBusiness/UsuarioSessionFacadeEJBean


javax.naming.NameNotFoundException: ejb not bound at org.jnp.server.NamingServer.getBinding
(NamingServer.java:495) at org.jnp.server.NamingServer.getBinding(NamingServer.java:503) at org.jnp.server.NamingServer.getObject(NamingServer.java:509) at org.jnp.server.NamingServer.lookup
(NamingServer.java:253) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:456) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:440) at javax.naming.InitialContext.lookup
(InitialContext.java:347) at AgendaPresentation.cadastrarusuarios.UsuarioControllerServlet.doGet
(UsuarioControllerServlet.java:115) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:469) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1040) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1151) at java.lang.Thread.run
(Thread.java:536)







<Padilha id="Nilseu">
Nilseu Perside Ortiz Padilha Junior
Estudante de Ciencia da Computacao - ULBRA
Desenvolvedor Java
<Quote>
Rejeitamos reis, presidentes e votos. Acreditamos em puro consenso e codigo eficiente. - Dave Clark
</Quote>
</Padilha>


---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]



--
xxxxxxxxxxxxxxxxxxxxxxxxxxxx
| Emerson Cargnin          |
| Analista de Sistemas Sr. |
| Tel : (051) 3358-4959    |
| SICREDI Servi�os         |
| Porto Alegre - Brasil    |
|xxxxxxxxxxxxxxxxxxxxxxxxxx|


---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]

Responder a