Sorry, I made a mistake with the JAR version. I'm so used to typing
3.1.2 that I did it without realizing. Since you're using 3.1.1, you
need to use openejb-core-3.1.1.jar

Quintin Beukes



On Sat, Oct 17, 2009 at 4:50 PM, Quintin Beukes <[email protected]> wrote:
> You have to include openejb-core-3.1.2.jar in your test classpath as
> well. Most IDEs have a separate classpath for unit tests. This
> classpath will be appended onto your normal classpath.
>
> The reason for including core is because for the unit tests to run the
> embedded container, you are basically running a complete openejb
> instance inside of the JVM, and for this you need the core of OpenEJB
> included. Further, a LocalInitialContextFactory only makes sense in an
> embedded container or application server of some sort, because it can
> only work for EJB references inside the same JVM, which is why it's
> only included in the core jar.
>
> One more question, are you using the openejb-api jar for one/more of
> the LocalClient/RemoteClient/EjbDeployment annotations?
>
> This should solve your problem.
>
> Quintin Beukes
>
>
>
> On Sat, Oct 17, 2009 at 3:31 PM, faizbash <[email protected]> wrote:
>>
>> Quintin,
>> Thanks for the response.
>>
>> I'm using openejb-api-3.1.1.jar and openejb-client-3.1.1.jar. I am not using
>> Maven.
>> This is what I got after running
>> System.out.println(System.getProperty("java.class.path"));
>>
>>
>> /home/faizbash/NetBeansProjects/CASE_management_sys/CASE_management_sys-ejb/build/jar:
>> /home/faizbash/netbeans-6.7/java2/modules/ext/junit-3.8.2.jar:
>> /home/faizbash/netbeans-6.7/platform10/modules/ext/junit-4.5.jar:
>> /home/faizbash/lib/openejb-3.1.1/lib/openejb-api-3.1.1.jar:
>> /home/faizbash/lib/openejb-3.1.1/lib/openejb-client-3.1.1.jar
>> ...
>>
>> and lots more.
>>
>> Sorry I forgot to include my code in the previous post:
>>
>>   �...@before
>>    public void bootContainer() throws Exception{
>>        Properties props = new Properties();
>>        props.put(Context.INITIAL_CONTEXT_FACTORY,
>>                "org.apache.openejb.client.LocalInitialContextFactory");
>>        Context context = new InitialContext(props);
>>        crudService = (CrudService) context.lookup("CrudServiceBean");
>>    }
>>
>>
>>
>>
>> Quintin Beukes-2 wrote:
>>>
>>> Two questions:
>>>
>>> 1. Which jars are you including in your classpath. Can you do a
>>> System.out.println(System.getProperty("java.class.path"));
>>> 2. If you are using maven, can you please paste your <dependencies>
>>> element of the POM.
>>>
>>> Quintin Beukes
>>>
>>>
>>>
>>> On Sat, Oct 17, 2009 at 10:23 AM, faizbash <[email protected]> wrote:
>>>>
>>>> Hello,
>>>>
>>>> I ve been trying to launch OpenEJB as an embeddable container for JUnit
>>>> tests, but I keep getting the following error:
>>>>
>>>> Cannot instantiate class:
>>>> org.apache.openejb.client.LocalInitialContextFactory
>>>> javax.naming.NoInitialContextException
>>>> at
>>>> javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
>>>> at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
>>>> at javax.naming.InitialContext.init(InitialContext.java:223)
>>>> at javax.naming.InitialContext.<init>(InitialContext.java:197)
>>>> ...
>>>>
>>>>
>>>> I am using OpenEJB 3.1, and when I checked the library, the
>>>> "LocalInitialContextFactory" class
>>>> is missing but the "RemoteInitialContextFactory" is available and I could
>>>> run the tests remotely,
>>>> but not locally.
>>>>
>>>> I ve been searching forums but could find solution to this problem.
>>>> Can anyone please tell me what is the problem?
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/OpenEJB-3.1-as-embeddable-container-tp25936338p25936338.html
>>>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>>
>>
>> --
>> View this message in context: 
>> http://www.nabble.com/OpenEJB-3.1-as-embeddable-container-tp25936338p25938290.html
>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>
>>
>

Reply via email to