Hi, Could you try org.apache.openejb.client.LocalInitialContextFactory as opposed to org.openejb.client.LocalInitialContextFactory (note the extra "apache" in the package name) for the INITIAL_CONTEXT_FACTORY property?
Cheers Jon On Tue, Mar 31, 2009 at 12:05 PM, Berry25 <[email protected]> wrote: > > Hi, > I am trying to set up and run openejb by those tutorials > http://openejb.apache.org/local-server.html > http://openejb.apache.org/embedding.html > When i am to try to run my program i will get this exception > > javax.naming.NamingException: Cannot instantiate a LocalInitialContext. > Exception: java.lang.NoSuchMethodException > org.apache.openejb.client.LocalInitialContext.<init>(java.util.Hashtable, > org.openejb.client.LocalInitialContextFactory) [Root exception is > java.lang.NoSuchMethodException: > org.apache.openejb.client.LocalInitialContext.<init>(java.util.Hashtable, > org.openejb.client.LocalInitialContextFactory)] > at > > org.apache.openejb.client.LocalInitialContextFactory.getLocalInitialContext(LocalInitialContextFactory.java:96) > at > > org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42) > at javax.naming.spi.NamingManager.getInitialContext(Unknown Source) > at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) > at javax.naming.InitialContext.init(Unknown Source) > at javax.naming.InitialContext.<init>(Unknown Source) > at cz.tisnov.main.Main2.main(Main2.java:29) > Caused by: java.lang.NoSuchMethodException: > org.apache.openejb.client.LocalInitialContext.<init>(java.util.Hashtable, > org.openejb.client.LocalInitialContextFactory) > at java.lang.Class.getConstructor0(Unknown Source) > at java.lang.Class.getConstructor(Unknown Source) > at > > org.apache.openejb.client.LocalInitialContextFactory.getLocalInitialContext(LocalInitialContextFactory.java:83) > ... 6 more > Exception in thread "main" java.lang.NullPointerException > at cz.tisnov.main.Main2.main(Main2.java:36) > > this is a program > Properties p = new Properties(); > > p.put(Context.INITIAL_CONTEXT_FACTORY, > "org.openejb.client.LocalInitialContextFactory"); > > p.put("openejb.home", > "D:\\Software\\java\\openejb-3.1"); > > p.put("openejb.configuration", > "D:\\Software\\java\\openejb-3.1\\openejb.xml"); > p.put("openejb.embedded.remotable", "true"); > > InitialContext ctx = null; > > try { > ctx= new InitialContext(p); > } catch (NamingException e) { > // TODO Auto-generated catch block > e.printStackTrace(); > } > > try { > Object obj = ctx.lookup("TimeLocal"); > } catch (NamingException e) { > // TODO Auto-generated catch block > e.printStackTrace(); > } > > and there is OpenEJB output > INFO - openejb.home = D:\Software\JAVA\openejb-3.1 > INFO - openejb.base = D:\Software\JAVA\openejb-3.1 > WARN - Cannot find the configuration file > [D:\Software\java\openejb-3.1\openejb.xml], Trying conf/openejb.xml > instead. > INFO - Configuring Service(id=Default Security Service, > type=SecurityService, provider-id=Default Security Service) > INFO - Configuring Service(id=Default Transaction Manager, > type=TransactionManager, provider-id=Default Transaction Manager) > INFO - Configuring Service(id=My DataSource, type=Resource, > provider-id=Default JDBC Database) > INFO - Configuring Service(id=My Unmanaged DataSource, type=Resource, > provider-id=Default JDBC Database) > INFO - Configuring Service(id=MySQL, type=Resource, provider-id=Default > JDBC > Database) > INFO - Configuring Service(id=MySQLUnMAn, type=Resource, > provider-id=Default > JDBC Database) > INFO - Configuring Service(id=My JMS Resource Adapter, type=Resource, > provider-id=Default JMS Resource Adapter) > INFO - Configuring Service(id=My JMS Connection Factory, type=Resource, > provider-id=Default JMS Connection Factory) > INFO - Configuring Service(id=My CMP Container, type=Container, > provider-id=Default CMP Container) > INFO - Configuring Service(id=My BMP Container, type=Container, > provider-id=Default BMP Container) > INFO - Configuring Service(id=My Stateful Container, type=Container, > provider-id=Default Stateful Container) > INFO - Configuring Service(id=My Stateless Container, type=Container, > provider-id=Default Stateless Container) > INFO - Configuring Service(id=My MDB Container , type=Container, > provider-id=Default MDB Container) > INFO - Configuring enterprise application: D:\Software\JAVA\warz\EJB.jar > INFO - Enterprise application "D:\Software\JAVA\warz\EJB.jar" loaded. > INFO - Configuring enterprise application: > D:\Software\JAVA\warz\EJBProject.jar > INFO - Configuring PersistenceUnit(name=EJBProject) > INFO - Adjusting EJBProject <non-jta-data-source> to 'MySQLUnMAn' > INFO - Enterprise application "D:\Software\JAVA\warz\EJBProject.jar" > loaded. > INFO - Configuring enterprise application: classpath.ear > INFO - Enterprise application "classpath.ear" loaded. > INFO - Assembling app: D:\Software\JAVA\warz\EJB.jar > INFO - Jndi(name=DateLocal) --> Ejb(deployment-id=Date) > INFO - Jndi(name=DateRemote) --> Ejb(deployment-id=Date) > INFO - Created Ejb(deployment-id=Date, ejb-name=Date, container=My > Stateless > Container) > INFO - Deployed Application(path=D:\Software\JAVA\warz\EJB.jar) > INFO - Assembling app: D:\Software\JAVA\warz\EJBProject.jar > INFO - PersistenceUnit(name=EJBProject, > provider=org.apache.openjpa.persistence.PersistenceProviderImpl) > ERROR - JAVA AGENT NOT INSTALLED. The JPA Persistence Provider requested > installation of a ClassFileTransformer which requires a JavaAgent. See > http://openejb.apache.org/3.0/javaagent.html > INFO - Jndi(name=TimeLocal) --> Ejb(deployment-id=Time) > INFO - Jndi(name=TimeRemote) --> Ejb(deployment-id=Time) > INFO - Created Ejb(deployment-id=Time, ejb-name=Time, container=My Stateful > Container) > INFO - Deployed Application(path=D:\Software\JAVA\warz\EJBProject.jar) > INFO - Assembling app: classpath.ear > INFO - Deployed Application(path=classpath.ear) > > configuration file > <openejb> > > <Container id="My CMP Container" type="CMP_ENTITY"> > > > </Container> > > > <Container id="My BMP Container" type="BMP_ENTITY"> > > > PoolSize 10 > > </Container> > > > <Container id="My Stateful Container" type="STATEFUL"> > > Passivator org.apache.openejb.core.stateful.SimplePassivater > > TimeOut 20 > > Capacity 1000 > BulkPassivate 100 > > </Container> > > > <Container id="My Stateless Container" type="STATELESS"> > TimeOut 0 > PoolSize 10 > StrictPooling true > > </Container> > > <Container id="My MDB Container " type="MESSAGE"> > ResourceAdapter My JMS Resource Adapter > MessageListenerInterface javax.jms.MessageListene > ActivationSpecClass org.apache.activemq.ra.ActiveMQActivationSpec > InstanceLimit 10 > </Container> > <Resource id="My DataSource" type="DataSource"> > JdbcDriver org.hsqldb.jdbcDriver > JdbcUrl jdbc:hsqldb:file:data/hsqldb/hsqldb > UserName sa > Password > JtaManaged true > </Resource> > > > <Resource id="My Unmanaged DataSource" type="DataSource"> > JdbcDriver org.hsqldb.jdbcDriver > JdbcUrl jdbc:hsqldb:file:data/hsqldb/hsqldb > UserName sa > Password > JtaManaged false > </Resource> > <Resource id="MySQL" type="DataSource"> > JdbcDriver com.mysql.jdbc.Driver > JdbcUrl jdbc:mysql://localhost:3306/base > UserName root > Password xxxxx > JtaManaged true > </Resource> > > <Resource id="MySQLUnMAn" type="DataSource"> > JdbcDriver com.mysql.jdbc.Driver > JdbcUrl jdbc:mysql://localhost:3306/base > UserName root > Password xxxxx > JtaManaged false > </Resource> > > <Resource id="My JMS Resource Adapter" type="ActiveMQResourceAdapter"> > BrokerXmlConfig broker:(tcp://localhost:61616)?useJmx=false > ServerUrl vm://localhost?async=true > > </Resource> > > <Connector id="My JMS Connection Factory" > type="javax.jms.ConnectionFactory"> > </Connector> > > > > <Deployments jar="d:/software/java/warz/EJB.jar"/> > <Deployments jar="d:/software/java/warz/EJBProject.jar"/> > </openejb> > > > > Does anybody know what is wrong with it ? > Thank for help:-) > -- > View this message in context: > http://www.nabble.com/Embedding-Openejb-tp22802864p22802864.html > Sent from the OpenEJB User mailing list archive at Nabble.com. > >
