Добрый день .... Проблема заключается в следующем на сервере jboss 4.0.4 разместил ejb, все нормально продеплоилось .... Код | ...... [EjbModule] Deploying FolderSessionBean 13:00:48,671 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'AnswerBean' to jndi 'indi/AnswerBean' 13:00:48,687 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'DistrnameBean' to jndi 'indi/DistrnameBean' 13:00:48,703 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'BoonBean' to jndi 'indi/BoonBean' 13:00:48,718 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'DistrsubjectBean' to jndi 'indi/DistrsubjectBean' 13:00:48,750 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'DocumentationBean' to jndi 'indi/DocumentationBean' 13:00:49,062 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'FormdivisionBean' to jndi 'indi/FormdivisionBean' 13:00:49,109 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'HrefBean' to jndi 'indi/HrefBean' 13:00:49,125 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'IntelligenceBean' to jndi 'indi/IntelligenceBean' 13:00:49,140 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'MessageBean' to jndi 'indi/MessageBean' 13:00:49,140 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'IntelligencechapterBean' to jndi 'indi/IntelligencechapterBean' 13:00:49,593 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'NewsBean' to jndi 'indi/NewsBean' 13:00:49,609 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'PravatemessageBean' to jndi 'indi/PravatemessageBean' 13:00:49,625 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'TipseBean' to jndi 'indi/TipseBean' 13:00:49,640 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'UsersBean' to jndi 'indi/UsersBean' 13:00:49,671 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'FolderSessionBean' to jndi 'indi/FolderSessionBean' 13:00:50,109 INFO [ProxyFactory] Bound EJB Home 'FolderSessionBean' to jndi 'FolderSessionBean' .........
|
Теперь из сервелета который исполняется на tomcate пытаюсь получить доступ к этому ejb Код | import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.*; import javax.rmi.PortableRemoteObject; import java.rmi.*; import javax.ejb.*;
public class Servlet1 extends HttpServlet { private static final String CONTENT_TYPE = "text/html; charset=windows-1251";
//Initialize global variables public void init() throws ServletException { }
//Process the HTTP Get request public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); Properties pr = new Properties(); pr.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); pr.put(Context.PROVIDER_URL,"jnp://localhost:1099"); try { // FolderSessionRemoteHome folderHome; Object result = null; Context init =(Context) new InitialContext(pr); Object obj = (Object)init.lookup("FolderSessionBean"); // result = PortableRemoteObject.narrow(obj,FolderSessionRemoteHome.class); // folderHome = (FolderSessionRemoteHome)result;
} catch (NamingException ex) { ex.printStackTrace(); } }
//Clean up resources public void destroy() { } }
|
в итоге он мне пишет .... Код | INFO: Server startup in 2859 ms javax.naming.NameNotFoundException: Name FolderSessionBean is not bound in this Context at org.apache.naming.NamingContext.lookup(NamingContext.java:769) at org.apache.naming.NamingContext.lookup(NamingContext.java:152) at sessionbean.Servlet1.doGet(Servlet1.java:37) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595)
|
Я думаю он просто не видит это JNDI имя просто не видит....! Хотя если сделать обычный класс и запустить его через main то все прекрасно работает ..... Подскажите в чем может проблема ..... ?
|