On 8/25/10 4:19 PM, Patrick Duin wrote:
>
> On Aug 25, 2010, at 3:41 PM, Pavel Bucek wrote:
>
>> On 8/25/10 2:22 PM, Patrick Duin wrote:
>>>
>>> On Aug 25, 2010, at 2:00 PM, Pavel Bucek wrote:
>>>
>>>> On 8/25/10 1:48 PM, Patrick Duin wrote:
>>>>> Hello,
>>>>>
>>>>> I am trying to upgrade jersey in my application from 1.1.5 to 1.3 
>>>>> and I am running into some troubles with my authentication in 
>>>>> junit tests.
>>>>> I am using the grizzly test container with an extra Filter that 
>>>>> adds a UserPrinciple to my HttpServletRequest.
>>>>> My test extends com.sun.jersey.test.framework.JerseyTest and 
>>>>> overrides:
>>>>>
>>>>> @Override
>>>>> protected AppDescriptor configure() {
>>>>>         WebAppDescriptor.Builder builder = new 
>>>>> WebAppDescriptor.Builder(ComponentRegistryRestService.class.getPackage().getName()).addFilter(DummySecurityFilter.class, 
>>>>> "DummySecurityFilter");
>>>>> return builder.build();
>>>>>     }
>>>>>
>>>>>
>>>>> My root resource has the HttpServletRequest injected in a field 
>>>>> like this:
>>>>>     @Context
>>>>> private HttpServletRequest request;
>>>>>
>>>>> In my tests I then create a request with the proper authentication 
>>>>> in the header. This works fine for most of my tests. I have one 
>>>>> test that does some concurrent requests, it fails sometimes. The 
>>>>> Grizzly FilterChain is not threadsafe and fails on a nullpointer 
>>>>> when using extra filters (this is in the grizzly version 1.9.18-i 
>>>>> used by jersey-test-framework-grizzly-1.3). It is supposed to be 
>>>>> fixed in grizzly 1.9.19 version. Is there any workaround at the 
>>>>> moment, am I doing something wrong to get this server 
>>>>> authentication working?
>>>>>
>>>>> What I have tried:
>>>>> - Use newer version of grizzly, but that is not compatible with 
>>>>> the Jersey-test-framework-grizzly at the moment.
>>>> what does this mean? I'm able to build 
>>>> jersey-test-framework-grizzly with 1.9.19 without problems.. (I'm 
>>>> going to update this dependency in the trunk right now)
>>> Sorry my bad, I couln't find the 1.9.19 version from 
>>> http://download.java.net/maven/2 so I downloaded it from the grizzly 
>>> website and installed it to my local maven repo. I forgot to add the 
>>> transitive dependencies so I got some class not found errors. Bad 
>>> idea to test these things after a long day of debugging. Are the 
>>> 1.9.19 versions available from a public maven repo? I would love to 
>>> test this.
>> yes, looks like 1.9.19 is available, but in the java.net *glassfish* 
>> repo - see 
>> http://download.java.net/maven/glassfish/com/sun/grizzly/grizzly-servlet-webserver/
>
> Thank you my tests are working again!
> I am now using:
> <dependency>
> <groupId>com.sun.jersey.jersey-test-framework</groupId>
> <artifactId>jersey-test-framework-grizzly</artifactId>
> <version>1.3</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>com.sun.grizzly</groupId>
> <artifactId>grizzly-servlet-webserver</artifactId>
> <version>1.9.19</version>
> <scope>test</scope>
> </dependency>
> I will update to jersey 1.4 when available. Thanks for the quick 
> replies, you helped a lot.
I had to revert back to 1.9.18-i, 1.9.19 breaks some osgi related tests; 
I'm not very familiar with OSGi, so I created a task for Jakub [1]. It 
might not get into 1.4 release.. (Jakub is on vacation right now). Sorry 
for troubles.
Pavel
[1] 
https://jersey.dev.java.net/issues/show_bug.cgi?id=576
>
> Cheers,
>  Patrick.
>
>