Hi All; i have this problem; i have a pc where there is an EJB; i want to use 
this ejb on another pc... in order to this in my web app i use this web.xml

anonymous wrote : <?xml version="1.0" encoding="UTF-8"?>
  | <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 
2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";>
  | <web-app>
  |   <display-name>TestEjbCall</display-name>
  |   
  |     <servlet-name>Cocoon</servlet-name>
  |     <display-name>Cocoon</display-name>
  |     Cocoon
  |     <servlet-class>org.apache.cocoon.servlet.CocoonServlet</servlet-class>
  |     <init-param>
  |       <param-name>init-classloader</param-name>
  |       <param-value>false</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>configurations</param-name>
  |       <param-value>/WEB-INF/cocoon.xconf</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>logkit-config</param-name>
  |       <param-value>/WEB-INF/logkit.xconf</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>servlet-logger</param-name>
  |       <param-value>access</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>cocoon-logger</param-name>
  |       <param-value>core</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>log-level</param-name>
  |       <param-value>WARN</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>allow-reload</param-name>
  |       <param-value>no</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>load-class</param-name>
  |       <param-value>org.hsqldb.jdbcDriver</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>enable-uploads</param-name>
  |       <param-value>false</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>autosave-uploads</param-name>
  |       <param-value>true</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>overwrite-uploads</param-name>
  |       <param-value>rename</param-value>
  |     </init-param>
  |     <init-param>
  |       <param-name>manage-exceptions</param-name>
  |       <param-value>true</param-value>
  |     </init-param>
  |     <load-on-startup>1</load-on-startup>
  |   
  |   <servlet-mapping>
  |     <servlet-name>Cocoon</servlet-name>
  |     <url-pattern>/</url-pattern>
  |   </servlet-mapping>
  |   <servlet-mapping>
  |     <servlet-name>Cocoon</servlet-name>
  |     <url-pattern>*.jsp</url-pattern>
  |   </servlet-mapping>
  |   <servlet-mapping>
  |     <servlet-name>Cocoon</servlet-name>
  |     <url-pattern>*.html</url-pattern>
  |   </servlet-mapping>
  |   <mime-mapping>
  |     css
  |     <mime-type>text/css</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     xml
  |     <mime-type>text/xml</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     xsl
  |     <mime-type>text/xml</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     xconf
  |     <mime-type>text/xml</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     xmap
  |     <mime-type>text/xml</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     ent
  |     <mime-type>text/plain</mime-type>
  |   </mime-mapping>
  |   <mime-mapping>
  |     grm
  |     <mime-type>text/plain</mime-type>
  |   </mime-mapping>
  |   <ejb-ref>
  |     <ejb-ref-name>ejb/TestBean</ejb-ref-name>
  |     <ejb-ref-type>Session</ejb-ref-type>
  |     it.eng.demo.nikko.TestHome
  |     it.eng.demo.nikko.TestRemote
  |   </ejb-ref>
  | </web-app>

while my jboss-web.xml is:

anonymous wrote : <?xml version="1.0" encoding="UTF-8"?>
  | <!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN" 
"http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd";>
  | <jboss-web>
  |   <context-root>TestEjbCall</context-root>
  |   <ejb-ref>
  |     <ejb-ref-name>ejb/TestBean</ejb-ref-name>
  |     <jndi-name>jnp://xxx.xxx.xx.xxx:1099/TestBean</jndi-name>
  |   </ejb-ref>
  | </jboss-web>

where xxx.xxx.xx.xxx is the addres of the pc where my ejb is deployed; in this 
pc the ejb is successufull deployed; infact i have no error... but if i try to 
call it on the pc with address: xxx.xxx.xx.yyy (same domain but only different 
addres) i have this exception


anonymous wrote : 2004-11-18 10:48:57,968 INFO  [org.apache.jk.server.JkMain] 
Jk running ID=0 time=0/31  config=null
  | 2004-11-18 10:49:44,703 INFO  [it.eng.nikko.demo.util.SessionBeanCaller] 
Getting context
  | 2004-11-18 10:49:44,703 INFO  [it.eng.nikko.demo.util.SessionBeanCaller] 
Getting home interface
  | 2004-11-18 10:49:45,093 ERROR [it.eng.nikko.demo.util.SessionBeanCaller] 
javax.naming.CommunicationException [Root exception is 
java.lang.ClassNotFoundException: it.eng.demo.nikko.TestHome (no security 
manager: RMI class loader disabled)]

I try to call the ejb by using this class:


  | package it.eng.nikko.demo.util;
  | 
  | import javax.naming.InitialContext;
  | import javax.naming.NamingException;
  | import javax.rmi.PortableRemoteObject;
  | 
  | import java.util.Properties;
  | 
  | import it.eng.demo.nikko.TestRemote;
  | import it.eng.demo.nikko.TestHome;
  | 
  | import org.apache.log4j.Logger;
  | import java.rmi.RemoteException;
  | import javax.ejb.CreateException;
  | 
  | public class SessionBeanCaller {
  | 
  |     private static final String MODULE = SessionBeanCaller.class.getName();
  |     private Logger log = Logger.getLogger( MODULE );
  | 
  |     private TestRemote test;
  |     private InitialContext ctx;
  |     public SessionBeanCaller() {
  |     }
  | 
  |     private InitialContext getCtx() throws NamingException {
  | 
  |         Properties p = new Properties();
  |         p.put( 
"java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory" );
  |     //p.put( "java.naming.provider.url","localhost:1099" );
  |         p.put( "java.naming.provider.url","192.168.11.201:1099" );
  |         return new InitialContext( p );
  |     }
  | 
  |     public void ejbInteraction( String msg ){
  | 
  |         try {
  | 
  |             log.info( "Getting context" );
  |             ctx = getCtx();
  | 
  |             log.info( "Getting home interface" );
  |             Object reference = ctx.lookup( "TestBean" );
  |             TestHome ejbHome = ( TestHome )( PortableRemoteObject.narrow( 
reference, TestHome.class ) );
  | 
  |             log.info( "Creating interface" );
  |             test = ejbHome.create();
  |             log.info( "Invoking remote method" );
  |             System.out.println( test.getStringHello( msg ) );
  |         } catch (NamingException ex) {
  | 
  |             log.error( ex );
  |         } catch (RemoteException ex) {
  | 
  |             log.error( ex );
  |         } catch (CreateException ex) {
  | 
  |             log.error( ex );
  |         }
  | 
  |     }
  | }

Must i include the ejb .jar file also in my web-app on the address 
xxx.xxx.xx.yyy?
Please can anybody help me??


View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3855568#3855568

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3855568


-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to