nikolaos,

i appear to be making progress, but now a new error.

it appears that stripes is not happy with the attempt to register
the StripesFilter. stacktrace below:

Testcase: stripesbook.dao.impl.stripersist.UserDaoImplTest:
Caused an ERROR
Exception registering new filter with name StripesFilter
java.lang.RuntimeException: Exception registering new filter with name
StripesFilter
        at 
net.sourceforge.stripes.mock.MockServletContext.addFilter(MockServletContext.java:215)
        at 
stripesbook.dao.impl.stripersist.UserDaoImplTest.setUpClass(UserDaoImplTest.java:37)
Caused by: net.sourceforge.stripes.exception.StripesRuntimeException:
Problem instantiating default configuration objects.
        at 
net.sourceforge.stripes.config.DefaultConfiguration.init(DefaultConfiguration.java:220)
        at 
net.sourceforge.stripes.config.RuntimeConfiguration.init(RuntimeConfiguration.java:272)
        at 
net.sourceforge.stripes.controller.StripesFilter.init(StripesFilter.java:125)
        at 
net.sourceforge.stripes.mock.MockServletContext.addFilter(MockServletContext.java:211)
        at 
net.sourceforge.stripes.controller.AnnotatedClassActionResolver.findClasses(AnnotatedClassActionResolver.java:666)
        at 
net.sourceforge.stripes.controller.AnnotatedClassActionResolver.init(AnnotatedClassActionResolver.java:115)
        at 
net.sourceforge.stripes.controller.NameBasedActionResolver.init(NameBasedActionResolver.java:125)
        at 
net.sourceforge.stripes.config.DefaultConfiguration.init(DefaultConfiguration.java:121)

any ideas?

thank you,
lev

On Thu, Jul 8, 2010 at 8:54 PM, Nikolaos Giannopoulos
<nikol...@brightminds.org> wrote:
> Lev,
>
> My bad.  Actually it is the Stripes filter w/ appropriate arguments in
> the web.xml that indirectly initializes the Stripersist module.
>
> Your exception is occurring b/c Stripersist has not been initialized
> (yes - I know - this is the understatement of the week ;-)
>
> Unfortunately I didn't notice that my tests had code that created a
> MockServletContext that setup Stripes and included in the
> Extension.Packages the argument "org.stripesstuff.stripersist" that
> initializes Stripersist.
>
> I had code strewn across a heirarchy of classes to provide different
> types of test frameworks... hopefully this snippet helps:
>
>        Map<String, String> filterParams = new HashMap<String, String>();
>        filterParams.put("Extension.Packages",
> "org.stripesstuff.stripersist");
>        MockServletContext servletContext = new
> MockServletContext("WebTest");
>        servletContext.addFilter(StripesFilter.class, "StripesFilter",
> filterParams);
>        servletContext.setServlet(DispatcherServlet.class,
> "StripesDispatcher", null);
>        Stripersist.requestInit();
>
> BTW after the save you will explicitly need to call:
>
>       userDao.commit(userObject);
>
> As Stripersist automatically begins a transaction for you but doesn't
> automatically commit it for you (for obvious reasons... e.g. rollback).
>
> --Nikolaos
>
>
>
> Lev wrote:
>> following jocke's suggestion, i added the following:
>>
>> src/test/resources/META-INF/persistence.xml
>>
>> this yields:
>>
>> target/test-classes/META-INF/persistence.xml
>>
>> however, the same NullPointerException persists on
>> the call to:
>>
>> Stripersist.getEntityManager()
>>
>>
>>
>> On Thu, Jul 8, 2010 at 4:39 PM, Jocke Eriksson <jockeeriks...@msn.com> wrote:
>>
>>> The path should be for junit
>>> tests target/test-classes/META-INF/persistence.xml
>>>
>>>
>>>> Date: Thu, 8 Jul 2010 01:58:28 -0500
>>>> From: d...@plektos.com
>>>> To: stripes-users@lists.sourceforge.net
>>>> Subject: Re: [Stripes-users] Stripersist.getEntityManager() -->
>>>> NullPointerException
>>>>
>>>> apologies: i forgot to attach my persistence.xml file to the
>>>> previous email. please find it attached. thanks!
>>>>
>>>> On Thu, Jul 8, 2010 at 1:57 AM, Lev <d...@plektos.com> wrote:
>>>>
>>>>> hi,
>>>>>
>>>>> i am trying to test code from "stripes... and java web development
>>>>> is fun again". specifically, i have imported the email_36 into a
>>>>> netbeans maven project.
>>>>>
>>>>> i have written a simple JUnit test for the project file:
>>>>> com.dao.impl.stripersist.UserDaoImpl. i have attached the
>>>>> test file.
>>>>>
>>>>> further, i have attached my persistence.xml file. it is located in:
>>>>> target/classes/META-INF/persistence.xml
>>>>>
>>>>> the error that i receive when executing the aforementioned
>>>>> JUnit test is:
>>>>>
>>>>> javax.persistence.PersistenceException: No Persistence provider for
>>>>> EntityManager named stripesbook_MavenEmail36WebApp_war_1.0-SNAPSHOTPU
>>>>>
>>>>> the exception is thrown at line 34 of the attached Junit test
>>>>> file. specifically, the call that triggers the error is:
>>>>>
>>>>> stripersist.init(url);
>>>>>
>>>>> i have confirmed that the URL is valid -- if i change it to something
>>>>> malformed, i receive an exception complaining that the file cannot
>>>>> be found.
>>>>>
>>>>> thank you again for your help,
>>>>> lev
>>>>>
>>>>>
>>>>> On Wed, Jul 7, 2010 at 10:19 AM, Aaron Porter <aa...@mongus.com> wrote:
>>>>>
>>>>>> Lev,
>>>>>> Sounds like you're getting closer! Now it looks like you need to check
>>>>>> your JPA configuration - make sure your persistence.xml is correct and
>>>>>> you've got all the jars to support it. I use Hibernate as the JPA
>>>>>> provider and PostgreSQL as the database.
>>>>>>
>>>>>> Aaron
>>>>>>
>>>>>> On 07/06/2010 11:42 PM, Lev wrote:
>>>>>>
>>>>>>> hi aaron,
>>>>>>>
>>>>>>> thank you for your help.
>>>>>>>
>>>>>>> 1) my persistence.xml ends up in the project root at:
>>>>>>>
>>>>>>> target/classes/META-INF/persistence.xml
>>>>>>>
>>>>>>> this appears to be correct to me. please correct me if
>>>>>>> i am wrong.
>>>>>>>
>>>>>>> 2) i implemented the calls that you suggested in the
>>>>>>> junit setUpClass() and tearDownClass() methods.
>>>>>>>
>>>>>>> it appears that Stripersist is successfully instantiated.
>>>>>>> however, the call "stirpersist.init(url)" fails with the
>>>>>>> following exception:
>>>>>>>
>>>>>>> javax.persistence.PersistenceException: No Persistence provider for
>>>>>>> EntityManager named...
>>>>>>>
>>>>>>> i believe that the URL is correctly formed. it points to
>>>>>>> the persistence.xml file in target/classes/META-INF.
>>>>>>>
>>>>>>> thank you again for your help,
>>>>>>> lev
>>>>>>>
>>>>>>> On Wed, Jul 7, 2010 at 12:56 AM, Aaron Porter<aa...@mongus.com>
>>>>>>>  wrote:
>>>>>>>
>>>>>>>
>>>>>>>> Lev,
>>>>>>>> The META-INF directory that contains persistence.xml needs to end up
>>>>>>>> at
>>>>>>>> /WEB-INF/classes/META-INF. It looks like the way you've set it up it
>>>>>>>> would be at /WEB-INF/classes/resources/META-INF. What I was proposing
>>>>>>>> was to create a new source folder called resources. In Eclipse you do
>>>>>>>> that by clicking File->New->Source Folder and enter resources as the
>>>>>>>> folder name.
>>>>>>>>
>>>>>>>> I'm guessing that even if you do have the persistence.xml file in the
>>>>>>>> correct location you'll get an error about trying to use Stripersist
>>>>>>>> without the Interceptor part of it because you're trying to test with
>>>>>>>> JUnit without a servlet container. It can be done but you'll need to
>>>>>>>> call some methods in Stripersist yourself. Create a new instance of
>>>>>>>> Stripersist and call init(new URL("path/to/persistence.xml")). Call
>>>>>>>> requestInit() to initialize for the current thread then call
>>>>>>>> requestComplete() to clean up when you're done.
>>>>>>>>
>>>>>>>> Aaron
>>>>>>>>
>>>>>>>>
>>>>>>>> On 07/06/2010 10:25 PM, Lev wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>> hi,
>>>>>>>>>
>>>>>>>>> i moved persistence.xml to src/resources/META-INF.
>>>>>>>>>
>>>>>>>>> however, the original problem persists -- i receive a
>>>>>>>>> NullPointerException on the call:
>>>>>>>>>
>>>>>>>>> Stripersist.getEntityManager();
>>>>>>>>>
>>>>>>>>> further information: i'm getting this exception when
>>>>>>>>> executing a Junit test of a DAO class -- i'm not
>>>>>>>>> executing web code (action beans, etc). would that
>>>>>>>>> contribute to the problem?
>>>>>>>>>
>>>>>>>>> any suggestions welcomed.
>>>>>>>>>
>>>>>>>>> thank you,
>>>>>>>>> lev
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Tue, Jul 6, 2010 at 11:59 AM, Aaron Porter<aa...@mongus.com>
>>>>>>>>>  wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Oops! Thanks for catching that Marcus!
>>>>>>>>>>
>>>>>>>>>> Aaron
>>>>>>>>>>
>>>>>>>>>> On 07/06/2010 09:09 AM, M.C.S. wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> Aaron Porter wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> If you're using Eclipse I recommend creating a source directory
>>>>>>>>>>>> named
>>>>>>>>>>>> resources and then creating a subdirectory named WEB-INF and
>>>>>>>>>>>> placing
>>>>>>>>>>>> persistence.xml in there.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> Surely just a typo, but it surely should be named META-INF. I
>>>>>>>>>>> really
>>>>>>>>>>> hate these standard folder names :-)
>>>>>>>>>>>
>>>>>>>>>>> Best wishes
>>>>>>>>>>> Marcus
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>>>>> This SF.net email is sponsored by Sprint
>>>>>>>>>>> What will you do first with EVO, the first 4G phone?
>>>>>>>>>>> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Stripes-users mailing list
>>>>>>>>>>> Stripes-users@lists.sourceforge.net
>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/stripes-users
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Sprint
> What will you do first with EVO, the first 4G phone?
> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
> _______________________________________________
> Stripes-users mailing list
> Stripes-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/stripes-users
>

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Stripes-users mailing list
Stripes-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/stripes-users

Reply via email to