You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by Gul Onural <go...@rim.com> on 2009/06/22 22:27:17 UTC

jndi lookup

I am trying to get the jndi lookup working with openejb for a test
class. The test class is very simple. I don't use any jndi formatting,
and using the default.
However my test case is failing when in the JNDI lookup. I set the
openejb.validation.output.level to VERBOSE, but it doesn't really show
anything 
to help me to understand the issue. 

I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method :

Properties properties = new Properties();
	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
		"org.apache.openejb.client.LocalInitialContextFactory");
	properties.setProperty("openejb.validation.output.level",
"VERBOSE");
	properties.setProperty("openejb.deployments.classpath", "true");
	
	initialContext = new InitialContext(properties);

In a test method in my test class:

	Object object =
initialContext.lookup("SampleStatelessBeanRemote");

	assertNotNull(object);
	assertTrue(object instanceof SampleStatelessRemote);
	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
	assertEquals("Hello from Sample Stateless Session Bean",
ssr.echo());

The SessionBean (SampleStatelessBean) uses annotations and based on my
understanding from the documentation,  iopenejb looks into the class
path and discovers 
annotations. My session bean remote and local interfaces as well as bean
implementation classes are in test classpath. The session bean doesn't
use 
any annotation properties such as name or mappedName.

Stack trace is below.  

Is there anything else I can do to debug the issue ? How can I get more
debug log from the openejb to further debug this ?

Gul


------------------------------------------------------------------------
-------
Test set: generic.samplestateless.impl.SampleStatelessTest
------------------------------------------------------------------------
-------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
sec <<< FAILURE!
testSampleStatelessRemoteInterface(generic.samplestateless.impl.SampleSt
atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote" not
found.
	at
org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
98)
	at
org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:155
)
	at
org.apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
java:115)
	at javax.naming.InitialContext.lookup(InitialContext.java:351)
	at
generic.samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
teInterface(SampleStatelessTest.java:85)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet
hod.java:44)
	at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
le.java:15)
	at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
d.java:41)
	at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
.java:20)
	at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
a:28)
	at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
31)
	at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
.java:73)
	at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
.java:46)
	at
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
	at
org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
	at
org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
	at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
a:28)
	at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
31)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
	at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
a:62)
	at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
t(AbstractDirectoryTestSuite.java:140)
	at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
actDirectoryTestSuite.java:127)
	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
ireBooter.java:345)
	at
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
:1009)

---------------------------------------------------------------------
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

Re: jndi lookup

Posted by David Blevins <da...@visi.com>.
On Jun 23, 2009, at 6:12 AM, Gul Onural wrote:

> Thanks David, I discovered last night that not having
> META-INF/ejb-jar.xml was the root cause of the issue I was  
> experiencing.
>
>
> I didn't want to have Deployment descriptor and I thought I read in  
> some
> doc. that the openejb could work without deployment descriptor for  
> EJB3
> compliant beans. Correct ?

Correct.  The link I posted has the documentation for that and other  
approaches.

-David

> -----Original Message-----
> From: David Blevins [mailto:david.blevins@visi.com]
> Sent: Monday, June 22, 2009 9:02 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
>
> No applications have been discovered in your classpath.  I recommend
> the META-INF/ejb-jar.xml approach described here:
> http://openejb.apache.org/3.0/application-discovery-via-the-classpath.ht
> ml
>
> If you're having trouble determining if the META-INF/ejb-jar.xml file
> for your ejb module is in the classpath, a little debug code like this
> in your test setup will help you see what OpenEJB sees (which may be
> nothing):
>
>        Enumeration<URL> ejbJars =
> this.getClass().getClassLoader().getResources("META-INF/ejb-jar.xml");
>        while (ejbJars.hasMoreElements()) {
>            URL url = ejbJars.nextElement();
>            System.out.println("app = " + url);
>        }
>
> Regarding the logging, we have an embedded.logging.properties file
> packed in our openejb-core jar that we use to configure the logging.
> You shouldn't need to create your own -- although that's fine.  You
> can also put logging tweaks right in your InitialContext properties
> like so:
>
>   Properties p = new Properties();
>   p.put(Context.INITIAL_CONTEXT_FACTORY,
> "org.apache.openejb.client.LocalInitialContextFactory");
>
>   p.put("log4j.rootLogger", "fatal,C");
>   p.put("log4j.category.OpenEJB", "warn");
>   p.put("log4j.category.OpenEJB.options", "info");
>   p.put("log4j.category.OpenEJB.server", "info");
>   p.put("log4j.category.OpenEJB.startup", "info");
>   p.put("log4j.category.OpenEJB.startup.service", "warn");
>   p.put("log4j.category.OpenEJB.startup.config", "info");
>   p.put("log4j.category.OpenEJB.hsql", "info");
>   p.put("log4j.category.CORBA-Adapter", "info");
>   p.put("log4j.category.Transaction", "warn");
>   p.put("log4j.category.org.apache.activemq", "error");
>   p.put("log4j.category.org.apache.geronimo", "error");
>   p.put("log4j.category.openjpa", "error");
>   p.put("log4j.appender.C", "org.apache.log4j.ConsoleAppender");
>   p.put("log4j.appender.C.layout", "org.apache.log4j.SimpleLayout");
>
>   Context context = new InitialContext(p);
>
> Essentially, everything starting with "log4j." gets applied as
> overrides on top of the embedded.logging.properties we find in the
> classpath.  This makes it possible to easily tweak the log levels
> while debugging a particular test, for example.
>
>
> Note, that InitialContext properties can also be supplied in a
> jndi.properties file in the classpath.  So all the above is possible
> and more, for example:
>
>  --[jndi.properties]--
>   # set the initial context factory
>   java.naming.factory.initial =
> org.apache.openejb.client.LocalInitialContextFactory
>
>   # change some logging
>   log4j.category.OpenEJB.options = debug
>   log4j.category.OpenEJB.startup = debug
>   log4j.category.OpenEJB.startup.config = debug
>
>   # create some resources
>   movieDatabase = new://Resource?type=DataSource
>   movieDatabase.JdbcDriver = org.hsqldb.jdbcDriver
>   movieDatabase.JdbcUrl = jdbc:hsqldb:mem:moviedb
>
>   # override properties on your "movie-unit" persistence unit
>   movie-unit.hibernate.dialect = org.hibernate.dialect.HSQLDialect
>
>   # set some openejb flags
>   openejb.jndiname.format = {ejbName}/{interfaceClass}
>   openejb.descriptors.output = true
>   openejb.validation.output.level = verbose
>  ---------------------
>
>
> Hope this helps!
>
>
> -David
>
>
> On Jun 22, 2009, at 2:19 PM, Gul Onural wrote:
>
>> I use openejb in intravm mode. I thought it was called embedded mode.
>> So, I have created an embedded.logging.properties under
>> src/test/resources and here is the output, but I am not sure it gives
>> anything to help me understand the issue.
>>
>> Can anyone see something to help understanding the jndi lookup issue
>> here ?
>>
>> Gul
>>
>>
>>
>> -------------------------------------------------------
>>
>> T E S T S
>>
>> -------------------------------------------------------
>>
>> Running provision.samplestateless.impl.SampleStatelessTest
>>
>> DEBUG - Using default 'openejb.nobanner=true'
>>
>> Apache OpenEJB 3.1.1    build: 20090530-06:18
>>
>> http://openejb.apache.org/
>>
>> INFO -
>>
>>
> ************************************************************************
>> ********
>>
>> OpenEJB http://openejb.apache.org/
>>
>> Startup: 6/22/09 5:02 PM
>>
>> Copyright 1999-2008 (C) Apache OpenEJB Project, All Rights Reserved.
>>
>> Version: 3.1.1
>>
>> Build date: 20090530
>>
>> Build time: 06:18
>>
>>
> ************************************************************************
>> ********
>>
>> DEBUG - Using default
>> 'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'
>>
>> DEBUG - Instantiating assembler class
>> org.apache.openejb.assembler.classic.Assembler
>>
>> DEBUG - Using default 'openejb.jndiname.failoncollision=true'
>>
>> DEBUG - Using default
>> 'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'
>>
>> DEBUG - Using default 'openejb.validation.skip=false'
>>
>> DEBUG - Using default 'openejb.deploymentId.format={ejbName}'
>>
>> DEBUG - Using default 'openejb.debuggable-vm-hackery=false'
>>
>> DEBUG - Using default 'openejb.webservices.enabled=true'
>>
>> DEBUG - Using default 'openejb.vendor.config=geronimo, glassfish,
>> jboss,
>> weblogic'  Possible values are: geronimo, glassfish, jboss, weblogic
>>
>> INFO - Cannot find the configuration file [conf/openejb.xml].  Will
>> attempt to create one for the beans deployed.
>>
>> DEBUG - Using default
>> 'openejb.provider.default=org.apache.openejb.embedded'
>>
>> 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)
>>
>> DEBUG - Using default 'openejb.deployments.classpath=true'
>>
>> DEBUG - Using default 'openejb.deployments.classpath.include='
>>
>> DEBUG - Using default 'openejb.deployments.classpath.exclude=.*'
>>
>> DEBUG - Using default
>> 'openejb.deployments.classpath.require.descriptor=false'
>>
>> DEBUG - Using default
>> 'openejb.deployments.classpath.filter.descriptors=false'
>>
>> DEBUG - Using default
>> 'openejb.deployments.classpath.filter.systemapps=true'
>>
>> DEBUG - Inspecting classpath for applications: 0 urls.
>>
>> DEBUG - URLs after filtering: 017
>>
>> INFO - Using 'openejb.deployments.classpath.ear=true'
>>
>> INFO - Configuring enterprise application: classpath.ear
>>
>> DEBUG - Using default 'openejb.descriptors.output=false'
>>
>> INFO - Using 'openejb.validation.output.level=VERBOSE'
>>
>> INFO - Enterprise application "classpath.ear" loaded.
>>
>> INFO - Creating TransactionManager(id=Default Transaction Manager)
>>
>> DEBUG - defaultTransactionTimeoutSeconds=600
>>
>> DEBUG - TxRecovery=false
>>
>> DEBUG - bufferSizeKb=32
>>
>> DEBUG - checksumEnabled=true
>>
>> DEBUG - adler32Checksum=true
>>
>> DEBUG - flushSleepTimeMilliseconds=50
>>
>> DEBUG - logFileDir=txlog
>>
>> DEBUG - logFileExt=log
>>
>> DEBUG - logFileName=howl
>>
>> DEBUG - maxBlocksPerFile=-1
>>
>> DEBUG - maxBuffers=0
>>
>> DEBUG - maxLogFiles=2
>>
>> DEBUG - minBuffers=4
>>
>> DEBUG - threadsWaitingForceThreshold=-1
>>
>> DEBUG - createService.success
>>
>> INFO - Creating SecurityService(id=Default Security Service)
>>
>> INFO - Assembling app: classpath.ear
>>
>> DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
>> values are: none, annotations, enums
>>
>> INFO - Deployed Application(path=classpath.ear)
>>
>> DEBUG - Containers        : 0
>>
>> DEBUG - Deployments       : 0
>>
>> DEBUG - SecurityService   :
>> org.apache.openejb.core.security.SecurityServiceImpl
>>
>> DEBUG - TransactionManager:
>> org.apache.geronimo.transaction.manager.GeronimoTransactionManager
>>
>> DEBUG - OpenEJB Container System ready.
>>
>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.266
>> sec <<< FAILURE!
>>
>>
>>
>> Results :
>>
>>
>>
>> Tests in error:
>>
>>
>> testSampleStatelessRemoteInterface
>> (generic.samplestateless.impl.SampleSt
>> atelessTest)
>>
>>
>>
>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
>>
>>
>>
>>
>> -----Original Message-----
>> From: David Blevins [mailto:david.blevins@visi.com]
>> Sent: Monday, June 22, 2009 4:58 PM
>> To: users@openejb.apache.org
>> Subject: Re: jndi lookup
>>
>> Should be printed to System.out.
>>
>> The output should look similar to the log lines at the end of this
>> example:  http://openejb.apache.org/3.0/simple-stateless-example.html
>>
>> -David
>>
>> On Jun 22, 2009, at 1:36 PM, Gul Onural wrote:
>>
>>> I am using openejb in embedded configuration. Where is the
>>> openejb.log
>>> populated in embedded configuration ?
>>>
>>> I don't see that file anywhere in my environment.
>>>
>>> Gul
>>>
>>>
>>> -----Original Message-----
>>> From: Jean-Louis MONTEIRO [mailto:jean- 
>>> louis.monteiro@atosorigin.com]
>>> Sent: Monday, June 22, 2009 4:33 PM
>>> To: users@openejb.apache.org
>>> Subject: Re: jndi lookup
>>>
>>>
>>> Hi,
>>>
>>> can you give us the openejb.log file ?
>>> If you cannot lookup the session bean, either the bean name is wrong
>>> either
>>> a deployment error prevented openejb to publish anything.
>>>
>>> thanks,
>>>
>>>
>>>
>>> Gul Onural wrote:
>>>>
>>>> I am trying to get the jndi lookup working with openejb for a test
>>>> class. The test class is very simple. I don't use any jndi
>>>> formatting,
>>>> and using the default.
>>>> However my test case is failing when in the JNDI lookup. I set the
>>>> openejb.validation.output.level to VERBOSE, but it doesn't really
>>>> show
>>>> anything
>>>> to help me to understand the issue.
>>>>
>>>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp
>>>> method
>>> :
>>>>
>>>> Properties properties = new Properties();
>>>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>>>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>>>> 	properties.setProperty("openejb.validation.output.level",
>>>> "VERBOSE");
>>>> 	properties.setProperty("openejb.deployments.classpath", "true");
>>>> 	
>>>> 	initialContext = new InitialContext(properties);
>>>>
>>>> In a test method in my test class:
>>>>
>>>> 	Object object =
>>>> initialContext.lookup("SampleStatelessBeanRemote");
>>>>
>>>> 	assertNotNull(object);
>>>> 	assertTrue(object instanceof SampleStatelessRemote);
>>>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>>>> 	assertEquals("Hello from Sample Stateless Session Bean",
>>>> ssr.echo());
>>>>
>>>> The SessionBean (SampleStatelessBean) uses annotations and based on
>>>> my
>>>> understanding from the documentation,  iopenejb looks into the  
>>>> class
>>>> path and discovers
>>>> annotations. My session bean remote and local interfaces as well as
>>> bean
>>>> implementation classes are in test classpath. The session bean
>>>> doesn't
>>>> use
>>>> any annotation properties such as name or mappedName.
>>>>
>>>> Stack trace is below.
>>>>
>>>> Is there anything else I can do to debug the issue ? How can I get
>>> more
>>>> debug log from the openejb to further debug this ?
>>>>
>>>> Gul
>>>>
>>>>
>>>>
>>>
>>
> ------------------------------------------------------------------------
>>>> -------
>>>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>>>
>>>
>>
> ------------------------------------------------------------------------
>>>> -------
>>>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:
>>>> 1.922
>>>> sec <<< FAILURE!
>>>>
>>> testSampleStatelessRemoteInterface
>>> (generic.samplestateless.impl.SampleSt
>>>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>>>> javax.naming.NameNotFoundException: Name  
>>>> "SampleStatelessBeanRemote"
>>> not
>>>> found.
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>>>> 98)
>>>> 	at
>>>>
>>> org 
>>> .apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:
>>> 155
>>>> )
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>>>> java:115)
>>>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>>>> 	at
>>>>
>>> generic
>>> .samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>>>> teInterface(SampleStatelessTest.java:85)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at
>>>>
>>> sun
>>> .reflect 
>>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>>> a:39)
>>>> 	at
>>>>
>>> sun
>>> .reflect 
>>> .DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>>> Impl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>>> 	at
>>>>
>>> org.junit.runners.model.FrameworkMethod
>>> $1.runReflectiveCall(FrameworkMet
>>>> hod.java:44)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>>>> le.java:15)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>>>> d.java:41)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>>>> .java:20)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>>> a:28)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>>> 31)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>>> .java:73)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>>> .java:46)
>>>> 	at
>>>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>>>> 	at
>>>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>>>> 	at
>>>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>>> a:28)
>>>> 	at
>>>>
>>> org
>>> .junit 
>>> .internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>>> 31)
>>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>>>> a:62)
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>>>> t(AbstractDirectoryTestSuite.java:140)
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>>>> actDirectoryTestSuite.java:127)
>>>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> 	at
>>>>
>>> sun
>>> .reflect 
>>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>>> a:39)
>>>> 	at
>>>>
>>> sun
>>> .reflect 
>>> .DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>>> Impl.java:25)
>>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>>>> ireBooter.java:345)
>>>> 	at
>>>>
>>> org
>>> .apache 
>>> .maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>>>> :1009)
>>>>
>>>>
> ---------------------------------------------------------------------
>>>> This transmission (including any attachments) may contain
>>>> confidential
>>>> information, privileged material (including material protected by
>>>> the
>>>> solicitor-client or other applicable privileges), or constitute
>>> non-public
>>>> information. Any use of this information by anyone other than the
>>> intended
>>>> recipient is prohibited. If you have received this transmission in
>>> error,
>>>> please immediately reply to the sender and delete this information
>>> from
>>>> your system. Use, dissemination, distribution, or reproduction of
>>>> this
>>>> transmission by unintended recipients is not authorized and may be
>>>> unlawful.
>>>>
>>>>
>>>
>>>
>>> -----
>>> Jean-Louis
>>> --
>>> View this message in context:
>>> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
>>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> This transmission (including any attachments) may contain
>>> confidential information, privileged material (including material
>>> protected by the solicitor-client or other applicable privileges),
>>> or constitute non-public information. Any use of this information by
>>> anyone other than the intended recipient is prohibited. If you have
>>> received this transmission in error, please immediately reply to the
>>> sender and delete this information from your system. Use,
>>> dissemination, distribution, or reproduction of this transmission by
>>> unintended recipients is not authorized and may be unlawful.
>>>
>>
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain
>> confidential information, privileged material (including material
>> protected by the solicitor-client or other applicable privileges),
>> or constitute non-public information. Any use of this information by
>> anyone other than the intended recipient is prohibited. If you have
>> received this transmission in error, please immediately reply to the
>> sender and delete this information from your system. Use,
>> dissemination, distribution, or reproduction of this transmission by
>> unintended recipients is not authorized and may be unlawful.
>>
>
>
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain  
> confidential information, privileged material (including material  
> protected by the solicitor-client or other applicable privileges),  
> or constitute non-public information. Any use of this information by  
> anyone other than the intended recipient is prohibited. If you have  
> received this transmission in error, please immediately reply to the  
> sender and delete this information from your system. Use,  
> dissemination, distribution, or reproduction of this transmission by  
> unintended recipients is not authorized and may be unlawful.
>


RE: jndi lookup

Posted by Gul Onural <go...@rim.com>.
Thanks David, I discovered last night that not having
META-INF/ejb-jar.xml was the root cause of the issue I was experiencing.


I didn't want to have Deployment descriptor and I thought I read in some
doc. that the openejb could work without deployment descriptor for EJB3
compliant beans. Correct ? 

Gul




-----Original Message-----
From: David Blevins [mailto:david.blevins@visi.com] 
Sent: Monday, June 22, 2009 9:02 PM
To: users@openejb.apache.org
Subject: Re: jndi lookup

No applications have been discovered in your classpath.  I recommend  
the META-INF/ejb-jar.xml approach described here:
http://openejb.apache.org/3.0/application-discovery-via-the-classpath.ht
ml

If you're having trouble determining if the META-INF/ejb-jar.xml file  
for your ejb module is in the classpath, a little debug code like this  
in your test setup will help you see what OpenEJB sees (which may be  
nothing):

        Enumeration<URL> ejbJars =  
this.getClass().getClassLoader().getResources("META-INF/ejb-jar.xml");
        while (ejbJars.hasMoreElements()) {
            URL url = ejbJars.nextElement();
            System.out.println("app = " + url);
        }

Regarding the logging, we have an embedded.logging.properties file  
packed in our openejb-core jar that we use to configure the logging.   
You shouldn't need to create your own -- although that's fine.  You  
can also put logging tweaks right in your InitialContext properties  
like so:

   Properties p = new Properties();
   p.put(Context.INITIAL_CONTEXT_FACTORY,  
"org.apache.openejb.client.LocalInitialContextFactory");

   p.put("log4j.rootLogger", "fatal,C");
   p.put("log4j.category.OpenEJB", "warn");
   p.put("log4j.category.OpenEJB.options", "info");
   p.put("log4j.category.OpenEJB.server", "info");
   p.put("log4j.category.OpenEJB.startup", "info");
   p.put("log4j.category.OpenEJB.startup.service", "warn");
   p.put("log4j.category.OpenEJB.startup.config", "info");
   p.put("log4j.category.OpenEJB.hsql", "info");
   p.put("log4j.category.CORBA-Adapter", "info");
   p.put("log4j.category.Transaction", "warn");
   p.put("log4j.category.org.apache.activemq", "error");
   p.put("log4j.category.org.apache.geronimo", "error");
   p.put("log4j.category.openjpa", "error");
   p.put("log4j.appender.C", "org.apache.log4j.ConsoleAppender");
   p.put("log4j.appender.C.layout", "org.apache.log4j.SimpleLayout");

   Context context = new InitialContext(p);

Essentially, everything starting with "log4j." gets applied as  
overrides on top of the embedded.logging.properties we find in the  
classpath.  This makes it possible to easily tweak the log levels  
while debugging a particular test, for example.


Note, that InitialContext properties can also be supplied in a  
jndi.properties file in the classpath.  So all the above is possible  
and more, for example:

  --[jndi.properties]--
   # set the initial context factory
   java.naming.factory.initial =  
org.apache.openejb.client.LocalInitialContextFactory

   # change some logging
   log4j.category.OpenEJB.options = debug
   log4j.category.OpenEJB.startup = debug
   log4j.category.OpenEJB.startup.config = debug

   # create some resources
   movieDatabase = new://Resource?type=DataSource
   movieDatabase.JdbcDriver = org.hsqldb.jdbcDriver
   movieDatabase.JdbcUrl = jdbc:hsqldb:mem:moviedb

   # override properties on your "movie-unit" persistence unit
   movie-unit.hibernate.dialect = org.hibernate.dialect.HSQLDialect

   # set some openejb flags
   openejb.jndiname.format = {ejbName}/{interfaceClass}
   openejb.descriptors.output = true
   openejb.validation.output.level = verbose
  ---------------------


Hope this helps!


-David


On Jun 22, 2009, at 2:19 PM, Gul Onural wrote:

> I use openejb in intravm mode. I thought it was called embedded mode.
> So, I have created an embedded.logging.properties under
> src/test/resources and here is the output, but I am not sure it gives
> anything to help me understand the issue.
>
> Can anyone see something to help understanding the jndi lookup issue
> here ?
>
> Gul
>
>
>
> -------------------------------------------------------
>
> T E S T S
>
> -------------------------------------------------------
>
> Running provision.samplestateless.impl.SampleStatelessTest
>
> DEBUG - Using default 'openejb.nobanner=true'
>
> Apache OpenEJB 3.1.1    build: 20090530-06:18
>
> http://openejb.apache.org/
>
> INFO -
>
>
************************************************************************
> ********
>
> OpenEJB http://openejb.apache.org/
>
> Startup: 6/22/09 5:02 PM
>
> Copyright 1999-2008 (C) Apache OpenEJB Project, All Rights Reserved.
>
> Version: 3.1.1
>
> Build date: 20090530
>
> Build time: 06:18
>
>
************************************************************************
> ********
>
> DEBUG - Using default
> 'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'
>
> DEBUG - Instantiating assembler class
> org.apache.openejb.assembler.classic.Assembler
>
> DEBUG - Using default 'openejb.jndiname.failoncollision=true'
>
> DEBUG - Using default
> 'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'
>
> DEBUG - Using default 'openejb.validation.skip=false'
>
> DEBUG - Using default 'openejb.deploymentId.format={ejbName}'
>
> DEBUG - Using default 'openejb.debuggable-vm-hackery=false'
>
> DEBUG - Using default 'openejb.webservices.enabled=true'
>
> DEBUG - Using default 'openejb.vendor.config=geronimo, glassfish,  
> jboss,
> weblogic'  Possible values are: geronimo, glassfish, jboss, weblogic
>
> INFO - Cannot find the configuration file [conf/openejb.xml].  Will
> attempt to create one for the beans deployed.
>
> DEBUG - Using default
> 'openejb.provider.default=org.apache.openejb.embedded'
>
> 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)
>
> DEBUG - Using default 'openejb.deployments.classpath=true'
>
> DEBUG - Using default 'openejb.deployments.classpath.include='
>
> DEBUG - Using default 'openejb.deployments.classpath.exclude=.*'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.require.descriptor=false'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.filter.descriptors=false'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.filter.systemapps=true'
>
> DEBUG - Inspecting classpath for applications: 0 urls.
>
> DEBUG - URLs after filtering: 017
>
> INFO - Using 'openejb.deployments.classpath.ear=true'
>
> INFO - Configuring enterprise application: classpath.ear
>
> DEBUG - Using default 'openejb.descriptors.output=false'
>
> INFO - Using 'openejb.validation.output.level=VERBOSE'
>
> INFO - Enterprise application "classpath.ear" loaded.
>
> INFO - Creating TransactionManager(id=Default Transaction Manager)
>
> DEBUG - defaultTransactionTimeoutSeconds=600
>
> DEBUG - TxRecovery=false
>
> DEBUG - bufferSizeKb=32
>
> DEBUG - checksumEnabled=true
>
> DEBUG - adler32Checksum=true
>
> DEBUG - flushSleepTimeMilliseconds=50
>
> DEBUG - logFileDir=txlog
>
> DEBUG - logFileExt=log
>
> DEBUG - logFileName=howl
>
> DEBUG - maxBlocksPerFile=-1
>
> DEBUG - maxBuffers=0
>
> DEBUG - maxLogFiles=2
>
> DEBUG - minBuffers=4
>
> DEBUG - threadsWaitingForceThreshold=-1
>
> DEBUG - createService.success
>
> INFO - Creating SecurityService(id=Default Security Service)
>
> INFO - Assembling app: classpath.ear
>
> DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
> values are: none, annotations, enums
>
> INFO - Deployed Application(path=classpath.ear)
>
> DEBUG - Containers        : 0
>
> DEBUG - Deployments       : 0
>
> DEBUG - SecurityService   :
> org.apache.openejb.core.security.SecurityServiceImpl
>
> DEBUG - TransactionManager:
> org.apache.geronimo.transaction.manager.GeronimoTransactionManager
>
> DEBUG - OpenEJB Container System ready.
>
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.266
> sec <<< FAILURE!
>
>
>
> Results :
>
>
>
> Tests in error:
>
>
> testSampleStatelessRemoteInterface 
> (generic.samplestateless.impl.SampleSt
> atelessTest)
>
>
>
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
>
>
>
>
> -----Original Message-----
> From: David Blevins [mailto:david.blevins@visi.com]
> Sent: Monday, June 22, 2009 4:58 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
>
> Should be printed to System.out.
>
> The output should look similar to the log lines at the end of this
> example:  http://openejb.apache.org/3.0/simple-stateless-example.html
>
> -David
>
> On Jun 22, 2009, at 1:36 PM, Gul Onural wrote:
>
>> I am using openejb in embedded configuration. Where is the  
>> openejb.log
>> populated in embedded configuration ?
>>
>> I don't see that file anywhere in my environment.
>>
>> Gul
>>
>>
>> -----Original Message-----
>> From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com]
>> Sent: Monday, June 22, 2009 4:33 PM
>> To: users@openejb.apache.org
>> Subject: Re: jndi lookup
>>
>>
>> Hi,
>>
>> can you give us the openejb.log file ?
>> If you cannot lookup the session bean, either the bean name is wrong
>> either
>> a deployment error prevented openejb to publish anything.
>>
>> thanks,
>>
>>
>>
>> Gul Onural wrote:
>>>
>>> I am trying to get the jndi lookup working with openejb for a test
>>> class. The test class is very simple. I don't use any jndi
>>> formatting,
>>> and using the default.
>>> However my test case is failing when in the JNDI lookup. I set the
>>> openejb.validation.output.level to VERBOSE, but it doesn't really
>>> show
>>> anything
>>> to help me to understand the issue.
>>>
>>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp  
>>> method
>> :
>>>
>>> Properties properties = new Properties();
>>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>>> 	properties.setProperty("openejb.validation.output.level",
>>> "VERBOSE");
>>> 	properties.setProperty("openejb.deployments.classpath", "true");
>>> 	
>>> 	initialContext = new InitialContext(properties);
>>>
>>> In a test method in my test class:
>>>
>>> 	Object object =
>>> initialContext.lookup("SampleStatelessBeanRemote");
>>>
>>> 	assertNotNull(object);
>>> 	assertTrue(object instanceof SampleStatelessRemote);
>>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>>> 	assertEquals("Hello from Sample Stateless Session Bean",
>>> ssr.echo());
>>>
>>> The SessionBean (SampleStatelessBean) uses annotations and based on
>>> my
>>> understanding from the documentation,  iopenejb looks into the class
>>> path and discovers
>>> annotations. My session bean remote and local interfaces as well as
>> bean
>>> implementation classes are in test classpath. The session bean
>>> doesn't
>>> use
>>> any annotation properties such as name or mappedName.
>>>
>>> Stack trace is below.
>>>
>>> Is there anything else I can do to debug the issue ? How can I get
>> more
>>> debug log from the openejb to further debug this ?
>>>
>>> Gul
>>>
>>>
>>>
>>
>
------------------------------------------------------------------------
>>> -------
>>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>>
>>
>
------------------------------------------------------------------------
>>> -------
>>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:  
>>> 1.922
>>> sec <<< FAILURE!
>>>
>> testSampleStatelessRemoteInterface
>> (generic.samplestateless.impl.SampleSt
>>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>>> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
>> not
>>> found.
>>> 	at
>>>
>> org
>> .apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>>> 98)
>>> 	at
>>>
>> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:
>> 155
>>> )
>>> 	at
>>>
>> org
>> .apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>>> java:115)
>>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>>> 	at
>>>
>> generic
>> .samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>>> teInterface(SampleStatelessTest.java:85)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> 	at
>>>
>> sun
>> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>> a:39)
>>> 	at
>>>
>> sun
>> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>> Impl.java:25)
>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>> 	at
>>>
>> org.junit.runners.model.FrameworkMethod
>> $1.runReflectiveCall(FrameworkMet
>>> hod.java:44)
>>> 	at
>>>
>> org
>> .junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>>> le.java:15)
>>> 	at
>>>
>> org
>> .junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>>> d.java:41)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>>> .java:20)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>> a:28)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>> 31)
>>> 	at
>>>
>> org
>> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>> .java:73)
>>> 	at
>>>
>> org
>> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>> .java:46)
>>> 	at
>>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>>> 	at
>>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>>> 	at
>>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>> a:28)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>> 31)
>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>>> a:62)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>>> t(AbstractDirectoryTestSuite.java:140)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>>> actDirectoryTestSuite.java:127)
>>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> 	at
>>>
>> sun
>> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>> a:39)
>>> 	at
>>>
>> sun
>> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>> Impl.java:25)
>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>>> ireBooter.java:345)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>>> :1009)
>>>
>>>
---------------------------------------------------------------------
>>> This transmission (including any attachments) may contain
>>> confidential
>>> information, privileged material (including material protected by  
>>> the
>>> solicitor-client or other applicable privileges), or constitute
>> non-public
>>> information. Any use of this information by anyone other than the
>> intended
>>> recipient is prohibited. If you have received this transmission in
>> error,
>>> please immediately reply to the sender and delete this information
>> from
>>> your system. Use, dissemination, distribution, or reproduction of
>>> this
>>> transmission by unintended recipients is not authorized and may be
>>> unlawful.
>>>
>>>
>>
>>
>> -----
>>  Jean-Louis
>> --
>> View this message in context:
>> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain
>> confidential information, privileged material (including material
>> protected by the solicitor-client or other applicable privileges),
>> or constitute non-public information. Any use of this information by
>> anyone other than the intended recipient is prohibited. If you have
>> received this transmission in error, please immediately reply to the
>> sender and delete this information from your system. Use,
>> dissemination, distribution, or reproduction of this transmission by
>> unintended recipients is not authorized and may be unlawful.
>>
>
>
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain  
> confidential information, privileged material (including material  
> protected by the solicitor-client or other applicable privileges),  
> or constitute non-public information. Any use of this information by  
> anyone other than the intended recipient is prohibited. If you have  
> received this transmission in error, please immediately reply to the  
> sender and delete this information from your system. Use,  
> dissemination, distribution, or reproduction of this transmission by  
> unintended recipients is not authorized and may be unlawful.
>


---------------------------------------------------------------------
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

Re: jndi lookup

Posted by David Blevins <da...@visi.com>.
No applications have been discovered in your classpath.  I recommend  
the META-INF/ejb-jar.xml approach described here:  http://openejb.apache.org/3.0/application-discovery-via-the-classpath.html

If you're having trouble determining if the META-INF/ejb-jar.xml file  
for your ejb module is in the classpath, a little debug code like this  
in your test setup will help you see what OpenEJB sees (which may be  
nothing):

        Enumeration<URL> ejbJars =  
this.getClass().getClassLoader().getResources("META-INF/ejb-jar.xml");
        while (ejbJars.hasMoreElements()) {
            URL url = ejbJars.nextElement();
            System.out.println("app = " + url);
        }

Regarding the logging, we have an embedded.logging.properties file  
packed in our openejb-core jar that we use to configure the logging.   
You shouldn't need to create your own -- although that's fine.  You  
can also put logging tweaks right in your InitialContext properties  
like so:

   Properties p = new Properties();
   p.put(Context.INITIAL_CONTEXT_FACTORY,  
"org.apache.openejb.client.LocalInitialContextFactory");

   p.put("log4j.rootLogger", "fatal,C");
   p.put("log4j.category.OpenEJB", "warn");
   p.put("log4j.category.OpenEJB.options", "info");
   p.put("log4j.category.OpenEJB.server", "info");
   p.put("log4j.category.OpenEJB.startup", "info");
   p.put("log4j.category.OpenEJB.startup.service", "warn");
   p.put("log4j.category.OpenEJB.startup.config", "info");
   p.put("log4j.category.OpenEJB.hsql", "info");
   p.put("log4j.category.CORBA-Adapter", "info");
   p.put("log4j.category.Transaction", "warn");
   p.put("log4j.category.org.apache.activemq", "error");
   p.put("log4j.category.org.apache.geronimo", "error");
   p.put("log4j.category.openjpa", "error");
   p.put("log4j.appender.C", "org.apache.log4j.ConsoleAppender");
   p.put("log4j.appender.C.layout", "org.apache.log4j.SimpleLayout");

   Context context = new InitialContext(p);

Essentially, everything starting with "log4j." gets applied as  
overrides on top of the embedded.logging.properties we find in the  
classpath.  This makes it possible to easily tweak the log levels  
while debugging a particular test, for example.


Note, that InitialContext properties can also be supplied in a  
jndi.properties file in the classpath.  So all the above is possible  
and more, for example:

  --[jndi.properties]--
   # set the initial context factory
   java.naming.factory.initial =  
org.apache.openejb.client.LocalInitialContextFactory

   # change some logging
   log4j.category.OpenEJB.options = debug
   log4j.category.OpenEJB.startup = debug
   log4j.category.OpenEJB.startup.config = debug

   # create some resources
   movieDatabase = new://Resource?type=DataSource
   movieDatabase.JdbcDriver = org.hsqldb.jdbcDriver
   movieDatabase.JdbcUrl = jdbc:hsqldb:mem:moviedb

   # override properties on your "movie-unit" persistence unit
   movie-unit.hibernate.dialect = org.hibernate.dialect.HSQLDialect

   # set some openejb flags
   openejb.jndiname.format = {ejbName}/{interfaceClass}
   openejb.descriptors.output = true
   openejb.validation.output.level = verbose
  ---------------------


Hope this helps!


-David


On Jun 22, 2009, at 2:19 PM, Gul Onural wrote:

> I use openejb in intravm mode. I thought it was called embedded mode.
> So, I have created an embedded.logging.properties under
> src/test/resources and here is the output, but I am not sure it gives
> anything to help me understand the issue.
>
> Can anyone see something to help understanding the jndi lookup issue
> here ?
>
> Gul
>
>
>
> -------------------------------------------------------
>
> T E S T S
>
> -------------------------------------------------------
>
> Running provision.samplestateless.impl.SampleStatelessTest
>
> DEBUG - Using default 'openejb.nobanner=true'
>
> Apache OpenEJB 3.1.1    build: 20090530-06:18
>
> http://openejb.apache.org/
>
> INFO -
>
> ************************************************************************
> ********
>
> OpenEJB http://openejb.apache.org/
>
> Startup: 6/22/09 5:02 PM
>
> Copyright 1999-2008 (C) Apache OpenEJB Project, All Rights Reserved.
>
> Version: 3.1.1
>
> Build date: 20090530
>
> Build time: 06:18
>
> ************************************************************************
> ********
>
> DEBUG - Using default
> 'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'
>
> DEBUG - Instantiating assembler class
> org.apache.openejb.assembler.classic.Assembler
>
> DEBUG - Using default 'openejb.jndiname.failoncollision=true'
>
> DEBUG - Using default
> 'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'
>
> DEBUG - Using default 'openejb.validation.skip=false'
>
> DEBUG - Using default 'openejb.deploymentId.format={ejbName}'
>
> DEBUG - Using default 'openejb.debuggable-vm-hackery=false'
>
> DEBUG - Using default 'openejb.webservices.enabled=true'
>
> DEBUG - Using default 'openejb.vendor.config=geronimo, glassfish,  
> jboss,
> weblogic'  Possible values are: geronimo, glassfish, jboss, weblogic
>
> INFO - Cannot find the configuration file [conf/openejb.xml].  Will
> attempt to create one for the beans deployed.
>
> DEBUG - Using default
> 'openejb.provider.default=org.apache.openejb.embedded'
>
> 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)
>
> DEBUG - Using default 'openejb.deployments.classpath=true'
>
> DEBUG - Using default 'openejb.deployments.classpath.include='
>
> DEBUG - Using default 'openejb.deployments.classpath.exclude=.*'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.require.descriptor=false'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.filter.descriptors=false'
>
> DEBUG - Using default
> 'openejb.deployments.classpath.filter.systemapps=true'
>
> DEBUG - Inspecting classpath for applications: 0 urls.
>
> DEBUG - URLs after filtering: 017
>
> INFO - Using 'openejb.deployments.classpath.ear=true'
>
> INFO - Configuring enterprise application: classpath.ear
>
> DEBUG - Using default 'openejb.descriptors.output=false'
>
> INFO - Using 'openejb.validation.output.level=VERBOSE'
>
> INFO - Enterprise application "classpath.ear" loaded.
>
> INFO - Creating TransactionManager(id=Default Transaction Manager)
>
> DEBUG - defaultTransactionTimeoutSeconds=600
>
> DEBUG - TxRecovery=false
>
> DEBUG - bufferSizeKb=32
>
> DEBUG - checksumEnabled=true
>
> DEBUG - adler32Checksum=true
>
> DEBUG - flushSleepTimeMilliseconds=50
>
> DEBUG - logFileDir=txlog
>
> DEBUG - logFileExt=log
>
> DEBUG - logFileName=howl
>
> DEBUG - maxBlocksPerFile=-1
>
> DEBUG - maxBuffers=0
>
> DEBUG - maxLogFiles=2
>
> DEBUG - minBuffers=4
>
> DEBUG - threadsWaitingForceThreshold=-1
>
> DEBUG - createService.success
>
> INFO - Creating SecurityService(id=Default Security Service)
>
> INFO - Assembling app: classpath.ear
>
> DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
> values are: none, annotations, enums
>
> INFO - Deployed Application(path=classpath.ear)
>
> DEBUG - Containers        : 0
>
> DEBUG - Deployments       : 0
>
> DEBUG - SecurityService   :
> org.apache.openejb.core.security.SecurityServiceImpl
>
> DEBUG - TransactionManager:
> org.apache.geronimo.transaction.manager.GeronimoTransactionManager
>
> DEBUG - OpenEJB Container System ready.
>
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.266
> sec <<< FAILURE!
>
>
>
> Results :
>
>
>
> Tests in error:
>
>
> testSampleStatelessRemoteInterface 
> (generic.samplestateless.impl.SampleSt
> atelessTest)
>
>
>
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
>
>
>
>
> -----Original Message-----
> From: David Blevins [mailto:david.blevins@visi.com]
> Sent: Monday, June 22, 2009 4:58 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
>
> Should be printed to System.out.
>
> The output should look similar to the log lines at the end of this
> example:  http://openejb.apache.org/3.0/simple-stateless-example.html
>
> -David
>
> On Jun 22, 2009, at 1:36 PM, Gul Onural wrote:
>
>> I am using openejb in embedded configuration. Where is the  
>> openejb.log
>> populated in embedded configuration ?
>>
>> I don't see that file anywhere in my environment.
>>
>> Gul
>>
>>
>> -----Original Message-----
>> From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com]
>> Sent: Monday, June 22, 2009 4:33 PM
>> To: users@openejb.apache.org
>> Subject: Re: jndi lookup
>>
>>
>> Hi,
>>
>> can you give us the openejb.log file ?
>> If you cannot lookup the session bean, either the bean name is wrong
>> either
>> a deployment error prevented openejb to publish anything.
>>
>> thanks,
>>
>>
>>
>> Gul Onural wrote:
>>>
>>> I am trying to get the jndi lookup working with openejb for a test
>>> class. The test class is very simple. I don't use any jndi
>>> formatting,
>>> and using the default.
>>> However my test case is failing when in the JNDI lookup. I set the
>>> openejb.validation.output.level to VERBOSE, but it doesn't really
>>> show
>>> anything
>>> to help me to understand the issue.
>>>
>>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp  
>>> method
>> :
>>>
>>> Properties properties = new Properties();
>>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>>> 	properties.setProperty("openejb.validation.output.level",
>>> "VERBOSE");
>>> 	properties.setProperty("openejb.deployments.classpath", "true");
>>> 	
>>> 	initialContext = new InitialContext(properties);
>>>
>>> In a test method in my test class:
>>>
>>> 	Object object =
>>> initialContext.lookup("SampleStatelessBeanRemote");
>>>
>>> 	assertNotNull(object);
>>> 	assertTrue(object instanceof SampleStatelessRemote);
>>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>>> 	assertEquals("Hello from Sample Stateless Session Bean",
>>> ssr.echo());
>>>
>>> The SessionBean (SampleStatelessBean) uses annotations and based on
>>> my
>>> understanding from the documentation,  iopenejb looks into the class
>>> path and discovers
>>> annotations. My session bean remote and local interfaces as well as
>> bean
>>> implementation classes are in test classpath. The session bean
>>> doesn't
>>> use
>>> any annotation properties such as name or mappedName.
>>>
>>> Stack trace is below.
>>>
>>> Is there anything else I can do to debug the issue ? How can I get
>> more
>>> debug log from the openejb to further debug this ?
>>>
>>> Gul
>>>
>>>
>>>
>>
> ------------------------------------------------------------------------
>>> -------
>>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>>
>>
> ------------------------------------------------------------------------
>>> -------
>>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:  
>>> 1.922
>>> sec <<< FAILURE!
>>>
>> testSampleStatelessRemoteInterface
>> (generic.samplestateless.impl.SampleSt
>>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>>> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
>> not
>>> found.
>>> 	at
>>>
>> org
>> .apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>>> 98)
>>> 	at
>>>
>> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:
>> 155
>>> )
>>> 	at
>>>
>> org
>> .apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>>> java:115)
>>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>>> 	at
>>>
>> generic
>> .samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>>> teInterface(SampleStatelessTest.java:85)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> 	at
>>>
>> sun
>> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>> a:39)
>>> 	at
>>>
>> sun
>> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>> Impl.java:25)
>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>> 	at
>>>
>> org.junit.runners.model.FrameworkMethod
>> $1.runReflectiveCall(FrameworkMet
>>> hod.java:44)
>>> 	at
>>>
>> org
>> .junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>>> le.java:15)
>>> 	at
>>>
>> org
>> .junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>>> d.java:41)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>>> .java:20)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>> a:28)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>> 31)
>>> 	at
>>>
>> org
>> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>> .java:73)
>>> 	at
>>>
>> org
>> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>>> .java:46)
>>> 	at
>>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>>> 	at
>>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>>> 	at
>>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>>> a:28)
>>> 	at
>>>
>> org
>> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>>> 31)
>>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>>> a:62)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>>> t(AbstractDirectoryTestSuite.java:140)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>>> actDirectoryTestSuite.java:127)
>>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> 	at
>>>
>> sun
>> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>>> a:39)
>>> 	at
>>>
>> sun
>> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>>> Impl.java:25)
>>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>>> ireBooter.java:345)
>>> 	at
>>>
>> org
>> .apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>>> :1009)
>>>
>>> ---------------------------------------------------------------------
>>> This transmission (including any attachments) may contain
>>> confidential
>>> information, privileged material (including material protected by  
>>> the
>>> solicitor-client or other applicable privileges), or constitute
>> non-public
>>> information. Any use of this information by anyone other than the
>> intended
>>> recipient is prohibited. If you have received this transmission in
>> error,
>>> please immediately reply to the sender and delete this information
>> from
>>> your system. Use, dissemination, distribution, or reproduction of
>>> this
>>> transmission by unintended recipients is not authorized and may be
>>> unlawful.
>>>
>>>
>>
>>
>> -----
>>  Jean-Louis
>> --
>> View this message in context:
>> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain
>> confidential information, privileged material (including material
>> protected by the solicitor-client or other applicable privileges),
>> or constitute non-public information. Any use of this information by
>> anyone other than the intended recipient is prohibited. If you have
>> received this transmission in error, please immediately reply to the
>> sender and delete this information from your system. Use,
>> dissemination, distribution, or reproduction of this transmission by
>> unintended recipients is not authorized and may be unlawful.
>>
>
>
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain  
> confidential information, privileged material (including material  
> protected by the solicitor-client or other applicable privileges),  
> or constitute non-public information. Any use of this information by  
> anyone other than the intended recipient is prohibited. If you have  
> received this transmission in error, please immediately reply to the  
> sender and delete this information from your system. Use,  
> dissemination, distribution, or reproduction of this transmission by  
> unintended recipients is not authorized and may be unlawful.
>


RE: jndi lookup

Posted by Gul Onural <go...@rim.com>.
I use openejb in intravm mode. I thought it was called embedded mode.
So, I have created an embedded.logging.properties under
src/test/resources and here is the output, but I am not sure it gives
anything to help me understand the issue.

Can anyone see something to help understanding the jndi lookup issue
here ?

Gul



-------------------------------------------------------

 T E S T S

-------------------------------------------------------

Running provision.samplestateless.impl.SampleStatelessTest

DEBUG - Using default 'openejb.nobanner=true'

Apache OpenEJB 3.1.1    build: 20090530-06:18

http://openejb.apache.org/

INFO - 

************************************************************************
********

OpenEJB http://openejb.apache.org/

Startup: 6/22/09 5:02 PM

Copyright 1999-2008 (C) Apache OpenEJB Project, All Rights Reserved.

Version: 3.1.1

Build date: 20090530

Build time: 06:18

************************************************************************
********

DEBUG - Using default
'openejb.assembler=org.apache.openejb.assembler.classic.Assembler'

DEBUG - Instantiating assembler class
org.apache.openejb.assembler.classic.Assembler

DEBUG - Using default 'openejb.jndiname.failoncollision=true'

DEBUG - Using default
'openejb.configurator=org.apache.openejb.config.ConfigurationFactory'

DEBUG - Using default 'openejb.validation.skip=false'

DEBUG - Using default 'openejb.deploymentId.format={ejbName}'

DEBUG - Using default 'openejb.debuggable-vm-hackery=false'

DEBUG - Using default 'openejb.webservices.enabled=true'

DEBUG - Using default 'openejb.vendor.config=geronimo, glassfish, jboss,
weblogic'  Possible values are: geronimo, glassfish, jboss, weblogic

INFO - Cannot find the configuration file [conf/openejb.xml].  Will
attempt to create one for the beans deployed.

DEBUG - Using default
'openejb.provider.default=org.apache.openejb.embedded'

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)

DEBUG - Using default 'openejb.deployments.classpath=true'

DEBUG - Using default 'openejb.deployments.classpath.include='

DEBUG - Using default 'openejb.deployments.classpath.exclude=.*'

DEBUG - Using default
'openejb.deployments.classpath.require.descriptor=false'

DEBUG - Using default
'openejb.deployments.classpath.filter.descriptors=false'

DEBUG - Using default
'openejb.deployments.classpath.filter.systemapps=true'

DEBUG - Inspecting classpath for applications: 0 urls.

DEBUG - URLs after filtering: 017

INFO - Using 'openejb.deployments.classpath.ear=true'

INFO - Configuring enterprise application: classpath.ear

DEBUG - Using default 'openejb.descriptors.output=false'

INFO - Using 'openejb.validation.output.level=VERBOSE'

INFO - Enterprise application "classpath.ear" loaded.

INFO - Creating TransactionManager(id=Default Transaction Manager)

DEBUG - defaultTransactionTimeoutSeconds=600

DEBUG - TxRecovery=false

DEBUG - bufferSizeKb=32

DEBUG - checksumEnabled=true

DEBUG - adler32Checksum=true

DEBUG - flushSleepTimeMilliseconds=50

DEBUG - logFileDir=txlog

DEBUG - logFileExt=log

DEBUG - logFileName=howl

DEBUG - maxBlocksPerFile=-1

DEBUG - maxBuffers=0

DEBUG - maxLogFiles=2

DEBUG - minBuffers=4

DEBUG - threadsWaitingForceThreshold=-1

DEBUG - createService.success

INFO - Creating SecurityService(id=Default Security Service)

INFO - Assembling app: classpath.ear

DEBUG - Using default 'openejb.tempclassloader.skip=none'  Possible
values are: none, annotations, enums

INFO - Deployed Application(path=classpath.ear)

DEBUG - Containers        : 0

DEBUG - Deployments       : 0

DEBUG - SecurityService   :
org.apache.openejb.core.security.SecurityServiceImpl

DEBUG - TransactionManager:
org.apache.geronimo.transaction.manager.GeronimoTransactionManager

DEBUG - OpenEJB Container System ready.

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.266
sec <<< FAILURE!



Results :



Tests in error: 

 
testSampleStatelessRemoteInterface(generic.samplestateless.impl.SampleSt
atelessTest)



Tests run: 1, Failures: 0, Errors: 1, Skipped: 0




-----Original Message-----
From: David Blevins [mailto:david.blevins@visi.com] 
Sent: Monday, June 22, 2009 4:58 PM
To: users@openejb.apache.org
Subject: Re: jndi lookup

Should be printed to System.out.

The output should look similar to the log lines at the end of this  
example:  http://openejb.apache.org/3.0/simple-stateless-example.html

-David

On Jun 22, 2009, at 1:36 PM, Gul Onural wrote:

> I am using openejb in embedded configuration. Where is the openejb.log
> populated in embedded configuration ?
>
> I don't see that file anywhere in my environment.
>
> Gul
>
>
> -----Original Message-----
> From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com]
> Sent: Monday, June 22, 2009 4:33 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
>
>
> Hi,
>
> can you give us the openejb.log file ?
> If you cannot lookup the session bean, either the bean name is wrong
> either
> a deployment error prevented openejb to publish anything.
>
> thanks,
>
>
>
> Gul Onural wrote:
>>
>> I am trying to get the jndi lookup working with openejb for a test
>> class. The test class is very simple. I don't use any jndi  
>> formatting,
>> and using the default.
>> However my test case is failing when in the JNDI lookup. I set the
>> openejb.validation.output.level to VERBOSE, but it doesn't really  
>> show
>> anything
>> to help me to understand the issue.
>>
>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method
> :
>>
>> Properties properties = new Properties();
>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>> 	properties.setProperty("openejb.validation.output.level",
>> "VERBOSE");
>> 	properties.setProperty("openejb.deployments.classpath", "true");
>> 	
>> 	initialContext = new InitialContext(properties);
>>
>> In a test method in my test class:
>>
>> 	Object object =
>> initialContext.lookup("SampleStatelessBeanRemote");
>>
>> 	assertNotNull(object);
>> 	assertTrue(object instanceof SampleStatelessRemote);
>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>> 	assertEquals("Hello from Sample Stateless Session Bean",
>> ssr.echo());
>>
>> The SessionBean (SampleStatelessBean) uses annotations and based on  
>> my
>> understanding from the documentation,  iopenejb looks into the class
>> path and discovers
>> annotations. My session bean remote and local interfaces as well as
> bean
>> implementation classes are in test classpath. The session bean  
>> doesn't
>> use
>> any annotation properties such as name or mappedName.
>>
>> Stack trace is below.
>>
>> Is there anything else I can do to debug the issue ? How can I get
> more
>> debug log from the openejb to further debug this ?
>>
>> Gul
>>
>>
>>
>
------------------------------------------------------------------------
>> -------
>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>
>
------------------------------------------------------------------------
>> -------
>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
>> sec <<< FAILURE!
>>
> testSampleStatelessRemoteInterface 
> (generic.samplestateless.impl.SampleSt
>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
> not
>> found.
>> 	at
>>
> org 
> .apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>> 98)
>> 	at
>>
> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java: 
> 155
>> )
>> 	at
>>
> org 
> .apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>> java:115)
>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>> 	at
>>
> generic 
> .samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>> teInterface(SampleStatelessTest.java:85)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun 
> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun 
> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org.junit.runners.model.FrameworkMethod 
> $1.runReflectiveCall(FrameworkMet
>> hod.java:44)
>> 	at
>>
> org 
> .junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>> le.java:15)
>> 	at
>>
> org 
> .junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>> d.java:41)
>> 	at
>>
> org 
> .junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>> .java:20)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at
>>
> org 
> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:73)
>> 	at
>>
> org 
> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:46)
>> 	at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>> 	at
>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>> 	at
>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>> 	at
>>
> org 
> .apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>> a:62)
>> 	at
>>
> org 
> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>> t(AbstractDirectoryTestSuite.java:140)
>> 	at
>>
> org 
> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>> actDirectoryTestSuite.java:127)
>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun 
> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun 
> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org 
> .apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>> ireBooter.java:345)
>> 	at
>>
> org 
> .apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>> :1009)
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain  
>> confidential
>> information, privileged material (including material protected by the
>> solicitor-client or other applicable privileges), or constitute
> non-public
>> information. Any use of this information by anyone other than the
> intended
>> recipient is prohibited. If you have received this transmission in
> error,
>> please immediately reply to the sender and delete this information
> from
>> your system. Use, dissemination, distribution, or reproduction of  
>> this
>> transmission by unintended recipients is not authorized and may be
>> unlawful.
>>
>>
>
>
> -----
>   Jean-Louis
> --
> View this message in context:
> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain  
> confidential information, privileged material (including material  
> protected by the solicitor-client or other applicable privileges),  
> or constitute non-public information. Any use of this information by  
> anyone other than the intended recipient is prohibited. If you have  
> received this transmission in error, please immediately reply to the  
> sender and delete this information from your system. Use,  
> dissemination, distribution, or reproduction of this transmission by  
> unintended recipients is not authorized and may be unlawful.
>


---------------------------------------------------------------------
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

Re: jndi lookup

Posted by David Blevins <da...@visi.com>.
Should be printed to System.out.

The output should look similar to the log lines at the end of this  
example:  http://openejb.apache.org/3.0/simple-stateless-example.html

-David

On Jun 22, 2009, at 1:36 PM, Gul Onural wrote:

> I am using openejb in embedded configuration. Where is the openejb.log
> populated in embedded configuration ?
>
> I don't see that file anywhere in my environment.
>
> Gul
>
>
> -----Original Message-----
> From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com]
> Sent: Monday, June 22, 2009 4:33 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
>
>
> Hi,
>
> can you give us the openejb.log file ?
> If you cannot lookup the session bean, either the bean name is wrong
> either
> a deployment error prevented openejb to publish anything.
>
> thanks,
>
>
>
> Gul Onural wrote:
>>
>> I am trying to get the jndi lookup working with openejb for a test
>> class. The test class is very simple. I don't use any jndi  
>> formatting,
>> and using the default.
>> However my test case is failing when in the JNDI lookup. I set the
>> openejb.validation.output.level to VERBOSE, but it doesn't really  
>> show
>> anything
>> to help me to understand the issue.
>>
>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method
> :
>>
>> Properties properties = new Properties();
>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>> 	properties.setProperty("openejb.validation.output.level",
>> "VERBOSE");
>> 	properties.setProperty("openejb.deployments.classpath", "true");
>> 	
>> 	initialContext = new InitialContext(properties);
>>
>> In a test method in my test class:
>>
>> 	Object object =
>> initialContext.lookup("SampleStatelessBeanRemote");
>>
>> 	assertNotNull(object);
>> 	assertTrue(object instanceof SampleStatelessRemote);
>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>> 	assertEquals("Hello from Sample Stateless Session Bean",
>> ssr.echo());
>>
>> The SessionBean (SampleStatelessBean) uses annotations and based on  
>> my
>> understanding from the documentation,  iopenejb looks into the class
>> path and discovers
>> annotations. My session bean remote and local interfaces as well as
> bean
>> implementation classes are in test classpath. The session bean  
>> doesn't
>> use
>> any annotation properties such as name or mappedName.
>>
>> Stack trace is below.
>>
>> Is there anything else I can do to debug the issue ? How can I get
> more
>> debug log from the openejb to further debug this ?
>>
>> Gul
>>
>>
>>
> ------------------------------------------------------------------------
>> -------
>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>
> ------------------------------------------------------------------------
>> -------
>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
>> sec <<< FAILURE!
>>
> testSampleStatelessRemoteInterface 
> (generic.samplestateless.impl.SampleSt
>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
> not
>> found.
>> 	at
>>
> org 
> .apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>> 98)
>> 	at
>>
> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java: 
> 155
>> )
>> 	at
>>
> org 
> .apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>> java:115)
>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>> 	at
>>
> generic 
> .samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>> teInterface(SampleStatelessTest.java:85)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun 
> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun 
> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org.junit.runners.model.FrameworkMethod 
> $1.runReflectiveCall(FrameworkMet
>> hod.java:44)
>> 	at
>>
> org 
> .junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>> le.java:15)
>> 	at
>>
> org 
> .junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>> d.java:41)
>> 	at
>>
> org 
> .junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>> .java:20)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at
>>
> org 
> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:73)
>> 	at
>>
> org 
> .junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:46)
>> 	at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>> 	at
>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>> 	at
>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org 
> .junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>> 	at
>>
> org 
> .apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>> a:62)
>> 	at
>>
> org 
> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>> t(AbstractDirectoryTestSuite.java:140)
>> 	at
>>
> org 
> .apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>> actDirectoryTestSuite.java:127)
>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun 
> .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun 
> .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org 
> .apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>> ireBooter.java:345)
>> 	at
>>
> org 
> .apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>> :1009)
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain  
>> confidential
>> information, privileged material (including material protected by the
>> solicitor-client or other applicable privileges), or constitute
> non-public
>> information. Any use of this information by anyone other than the
> intended
>> recipient is prohibited. If you have received this transmission in
> error,
>> please immediately reply to the sender and delete this information
> from
>> your system. Use, dissemination, distribution, or reproduction of  
>> this
>> transmission by unintended recipients is not authorized and may be
>> unlawful.
>>
>>
>
>
> -----
>   Jean-Louis
> --
> View this message in context:
> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain  
> confidential information, privileged material (including material  
> protected by the solicitor-client or other applicable privileges),  
> or constitute non-public information. Any use of this information by  
> anyone other than the intended recipient is prohibited. If you have  
> received this transmission in error, please immediately reply to the  
> sender and delete this information from your system. Use,  
> dissemination, distribution, or reproduction of this transmission by  
> unintended recipients is not authorized and may be unlawful.
>


RE: jndi lookup

Posted by Jean-Louis MONTEIRO <je...@atosorigin.com>.
Hi Gul,

Hum, may be I'm wrong but after reading your post it seemed to me you were
using OpenEJB standalone in a JUnit TestCase. So, if I'm right, openejb has
been bootstrapped with the new InitialContext so openejb.log is in a logs
directory. 

If i'm wrong and you are using openejb embedded (in Tomcat may be), openejb
uses a ConsoleAppender.





Gul Onural wrote:
> 
> I am using openejb in embedded configuration. Where is the openejb.log
> populated in embedded configuration ?
> 
> I don't see that file anywhere in my environment.
> 
> Gul
> 
> 
> -----Original Message-----
> From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com]
> Sent: Monday, June 22, 2009 4:33 PM
> To: users@openejb.apache.org
> Subject: Re: jndi lookup
> 
> 
> Hi,
> 
> can you give us the openejb.log file ?
> If you cannot lookup the session bean, either the bean name is wrong
> either
> a deployment error prevented openejb to publish anything.
> 
> thanks,
> 
> 
> 
> Gul Onural wrote:
>>
>> I am trying to get the jndi lookup working with openejb for a test
>> class. The test class is very simple. I don't use any jndi formatting,
>> and using the default.
>> However my test case is failing when in the JNDI lookup. I set the
>> openejb.validation.output.level to VERBOSE, but it doesn't really show
>> anything
>> to help me to understand the issue.
>>
>> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method
> :
>>
>> Properties properties = new Properties();
>> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>> 		"org.apache.openejb.client.LocalInitialContextFactory");
>> 	properties.setProperty("openejb.validation.output.level",
>> "VERBOSE");
>> 	properties.setProperty("openejb.deployments.classpath", "true");
>> 	
>> 	initialContext = new InitialContext(properties);
>>
>> In a test method in my test class:
>>
>> 	Object object =
>> initialContext.lookup("SampleStatelessBeanRemote");
>>
>> 	assertNotNull(object);
>> 	assertTrue(object instanceof SampleStatelessRemote);
>> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
>> 	assertEquals("Hello from Sample Stateless Session Bean",
>> ssr.echo());
>>
>> The SessionBean (SampleStatelessBean) uses annotations and based on my
>> understanding from the documentation,  iopenejb looks into the class
>> path and discovers
>> annotations. My session bean remote and local interfaces as well as
> bean
>> implementation classes are in test classpath. The session bean doesn't
>> use
>> any annotation properties such as name or mappedName.
>>
>> Stack trace is below.
>>
>> Is there anything else I can do to debug the issue ? How can I get
> more
>> debug log from the openejb to further debug this ?
>>
>> Gul
>>
>>
>>
> ------------------------------------------------------------------------
>> -------
>> Test set: generic.samplestateless.impl.SampleStatelessTest
>>
> ------------------------------------------------------------------------
>> -------
>> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
>> sec <<< FAILURE!
>>
> testSampleStatelessRemoteInterface(generic.samplestateless.impl.SampleSt
>> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
>> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
> not
>> found.
>> 	at
>>
> org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
>> 98)
>> 	at
>>
> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:155
>> )
>> 	at
>>
> org.apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
>> java:115)
>> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
>> 	at
>>
> generic.samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
>> teInterface(SampleStatelessTest.java:85)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet
>> hod.java:44)
>> 	at
>>
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
>> le.java:15)
>> 	at
>>
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
>> d.java:41)
>> 	at
>>
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
>> .java:20)
>> 	at
>>
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at
>>
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:73)
>> 	at
>>
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
>> .java:46)
>> 	at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>> 	at
>> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>> 	at
>> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>> 	at
>>
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
>> a:28)
>> 	at
>>
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
>> 31)
>> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>> 	at
>>
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
>> a:62)
>> 	at
>>
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
>> t(AbstractDirectoryTestSuite.java:140)
>> 	at
>>
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
>> actDirectoryTestSuite.java:127)
>> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> 	at
>>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
>> a:39)
>> 	at
>>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
>> Impl.java:25)
>> 	at java.lang.reflect.Method.invoke(Method.java:585)
>> 	at
>>
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
>> ireBooter.java:345)
>> 	at
>>
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
>> :1009)
>>
>> ---------------------------------------------------------------------
>> This transmission (including any attachments) may contain confidential
>> information, privileged material (including material protected by the
>> solicitor-client or other applicable privileges), or constitute
> non-public
>> information. Any use of this information by anyone other than the
> intended
>> recipient is prohibited. If you have received this transmission in
> error,
>> please immediately reply to the sender and delete this information
> from
>> your system. Use, dissemination, distribution, or reproduction of this
>> transmission by unintended recipients is not authorized and may be
>> unlawful.
>>
>>
> 
> 
> -----
>    Jean-Louis
> --
> View this message in context:
> http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain confidential
> information, privileged material (including material protected by the
> solicitor-client or other applicable privileges), or constitute non-public
> information. Any use of this information by anyone other than the intended
> recipient is prohibited. If you have received this transmission in error,
> please immediately reply to the sender and delete this information from
> your system. Use, dissemination, distribution, or reproduction of this
> transmission by unintended recipients is not authorized and may be
> unlawful.
> 
> 


-----
   Jean-Louis
-- 
View this message in context: http://www.nabble.com/jndi-lookup-tp24154795p24155322.html
Sent from the OpenEJB User mailing list archive at Nabble.com.


RE: jndi lookup

Posted by Gul Onural <go...@rim.com>.
I am using openejb in embedded configuration. Where is the openejb.log
populated in embedded configuration ? 

I don't see that file anywhere in my environment. 

Gul


-----Original Message-----
From: Jean-Louis MONTEIRO [mailto:jean-louis.monteiro@atosorigin.com] 
Sent: Monday, June 22, 2009 4:33 PM
To: users@openejb.apache.org
Subject: Re: jndi lookup


Hi,

can you give us the openejb.log file ?
If you cannot lookup the session bean, either the bean name is wrong
either
a deployment error prevented openejb to publish anything.

thanks,



Gul Onural wrote:
> 
> I am trying to get the jndi lookup working with openejb for a test
> class. The test class is very simple. I don't use any jndi formatting,
> and using the default.
> However my test case is failing when in the JNDI lookup. I set the
> openejb.validation.output.level to VERBOSE, but it doesn't really show
> anything
> to help me to understand the issue.
> 
> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method
:
> 
> Properties properties = new Properties();
> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
> 		"org.apache.openejb.client.LocalInitialContextFactory");
> 	properties.setProperty("openejb.validation.output.level",
> "VERBOSE");
> 	properties.setProperty("openejb.deployments.classpath", "true");
> 	
> 	initialContext = new InitialContext(properties);
> 
> In a test method in my test class:
> 
> 	Object object =
> initialContext.lookup("SampleStatelessBeanRemote");
> 
> 	assertNotNull(object);
> 	assertTrue(object instanceof SampleStatelessRemote);
> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
> 	assertEquals("Hello from Sample Stateless Session Bean",
> ssr.echo());
> 
> The SessionBean (SampleStatelessBean) uses annotations and based on my
> understanding from the documentation,  iopenejb looks into the class
> path and discovers
> annotations. My session bean remote and local interfaces as well as
bean
> implementation classes are in test classpath. The session bean doesn't
> use
> any annotation properties such as name or mappedName.
> 
> Stack trace is below.
> 
> Is there anything else I can do to debug the issue ? How can I get
more
> debug log from the openejb to further debug this ?
> 
> Gul
> 
> 
>
------------------------------------------------------------------------
> -------
> Test set: generic.samplestateless.impl.SampleStatelessTest
>
------------------------------------------------------------------------
> -------
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
> sec <<< FAILURE!
>
testSampleStatelessRemoteInterface(generic.samplestateless.impl.SampleSt
> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote"
not
> found.
> 	at
>
org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
> 98)
> 	at
>
org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:155
> )
> 	at
>
org.apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
> java:115)
> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
> 	at
>
generic.samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
> teInterface(SampleStatelessTest.java:85)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 	at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at
>
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet
> hod.java:44)
> 	at
>
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
> le.java:15)
> 	at
>
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
> d.java:41)
> 	at
>
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
> .java:20)
> 	at
>
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
> a:28)
> 	at
>
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
> 31)
> 	at
>
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
> .java:73)
> 	at
>
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
> .java:46)
> 	at
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> 	at
> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> 	at
> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> 	at
>
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
> a:28)
> 	at
>
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
> 31)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> 	at
>
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
> a:62)
> 	at
>
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
> t(AbstractDirectoryTestSuite.java:140)
> 	at
>
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
> actDirectoryTestSuite.java:127)
> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 	at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at
>
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
> ireBooter.java:345)
> 	at
>
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
> :1009)
> 
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain confidential
> information, privileged material (including material protected by the
> solicitor-client or other applicable privileges), or constitute
non-public
> information. Any use of this information by anyone other than the
intended
> recipient is prohibited. If you have received this transmission in
error,
> please immediately reply to the sender and delete this information
from
> your system. Use, dissemination, distribution, or reproduction of this
> transmission by unintended recipients is not authorized and may be
> unlawful.
> 
> 


-----
   Jean-Louis
-- 
View this message in context:
http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
Sent from the OpenEJB User mailing list archive at Nabble.com.


---------------------------------------------------------------------
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

Re: jndi lookup

Posted by Jean-Louis MONTEIRO <je...@atosorigin.com>.
Hi,

can you give us the openejb.log file ?
If you cannot lookup the session bean, either the bean name is wrong either
a deployment error prevented openejb to publish anything.

thanks,



Gul Onural wrote:
> 
> I am trying to get the jndi lookup working with openejb for a test
> class. The test class is very simple. I don't use any jndi formatting,
> and using the default.
> However my test case is failing when in the JNDI lookup. I set the
> openejb.validation.output.level to VERBOSE, but it doesn't really show
> anything
> to help me to understand the issue.
> 
> I am using Junit 4.5 and openejb 3.1.1. In my test class setUp method :
> 
> Properties properties = new Properties();
> 	properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
> 		"org.apache.openejb.client.LocalInitialContextFactory");
> 	properties.setProperty("openejb.validation.output.level",
> "VERBOSE");
> 	properties.setProperty("openejb.deployments.classpath", "true");
> 	
> 	initialContext = new InitialContext(properties);
> 
> In a test method in my test class:
> 
> 	Object object =
> initialContext.lookup("SampleStatelessBeanRemote");
> 
> 	assertNotNull(object);
> 	assertTrue(object instanceof SampleStatelessRemote);
> 	SampleStatelessRemote ssr = (SampleStatelessRemote) object;
> 	assertEquals("Hello from Sample Stateless Session Bean",
> ssr.echo());
> 
> The SessionBean (SampleStatelessBean) uses annotations and based on my
> understanding from the documentation,  iopenejb looks into the class
> path and discovers
> annotations. My session bean remote and local interfaces as well as bean
> implementation classes are in test classpath. The session bean doesn't
> use
> any annotation properties such as name or mappedName.
> 
> Stack trace is below.
> 
> Is there anything else I can do to debug the issue ? How can I get more
> debug log from the openejb to further debug this ?
> 
> Gul
> 
> 
> ------------------------------------------------------------------------
> -------
> Test set: generic.samplestateless.impl.SampleStatelessTest
> ------------------------------------------------------------------------
> -------
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.922
> sec <<< FAILURE!
> testSampleStatelessRemoteInterface(generic.samplestateless.impl.SampleSt
> atelessTest)  Time elapsed: 1.796 sec  <<< ERROR!
> javax.naming.NameNotFoundException: Name "SampleStatelessBeanRemote" not
> found.
> 	at
> org.apache.openejb.core.ivm.naming.IvmContext.federate(IvmContext.java:1
> 98)
> 	at
> org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:155
> )
> 	at
> org.apache.openejb.core.ivm.naming.ContextWrapper.lookup(ContextWrapper.
> java:115)
> 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
> 	at
> generic.samplestateless.impl.SampleStatelessTest.testSampleStatelessRemo
> teInterface(SampleStatelessTest.java:85)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 	at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet
> hod.java:44)
> 	at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab
> le.java:15)
> 	at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho
> d.java:41)
> 	at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod
> .java:20)
> 	at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
> a:28)
> 	at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
> 31)
> 	at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
> .java:73)
> 	at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner
> .java:46)
> 	at
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
> 	at
> org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
> 	at
> org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
> 	at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav
> a:28)
> 	at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
> 31)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
> 	at
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav
> a:62)
> 	at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSe
> t(AbstractDirectoryTestSuite.java:140)
> 	at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(Abstr
> actDirectoryTestSuite.java:127)
> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
> 	at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(Suref
> ireBooter.java:345)
> 	at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java
> :1009)
> 
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain confidential
> information, privileged material (including material protected by the
> solicitor-client or other applicable privileges), or constitute non-public
> information. Any use of this information by anyone other than the intended
> recipient is prohibited. If you have received this transmission in error,
> please immediately reply to the sender and delete this information from
> your system. Use, dissemination, distribution, or reproduction of this
> transmission by unintended recipients is not authorized and may be
> unlawful.
> 
> 


-----
   Jean-Louis
-- 
View this message in context: http://www.nabble.com/jndi-lookup-tp24154795p24154888.html
Sent from the OpenEJB User mailing list archive at Nabble.com.