You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "William (BJ) Blackburn (JIRA)" <ji...@apache.org> on 2010/01/18 21:26:54 UTC

[jira] Commented: (CXF-2620) CXFServlet fails to init with NPE at line 125 (updateContext) when run with embedded Jetty and Spring3 - works with Spring 2.5.6

    [ https://issues.apache.org/jira/browse/CXF-2620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12801931#action_12801931 ] 

William (BJ) Blackburn commented on CXF-2620:
---------------------------------------------

I've been working on this more - and it now appears to me to have more to do with some mysterious change in Spring between 2.5.6 and 3.0 - I do not think CXF is involved and this issue can probably be closed (although any additional info anyone has is appreciated).

The code that fails in CXFServlet under Spring 3.0 is at line 125:

    resourceManager.addResourceResolver(new ServletContextResourceResolver(
                                               servletConfig.getServletContext()));

specifically 'servletConfig' is null when the sample code is run under Spring 3.0 and is valid when run with 2.5.6. I have been unable to determine what Spring would even have to do with the servlet config.

> CXFServlet fails to init with NPE at line 125 (updateContext) when run with embedded Jetty and Spring3 - works with Spring 2.5.6
> --------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-2620
>                 URL: https://issues.apache.org/jira/browse/CXF-2620
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 2.2.5
>         Environment: Spring 3.0.0.RELEASE / Jetty 6.1.8 (embedded)
>            Reporter: William (BJ) Blackburn
>         Attachments: embedded-jetty-tests.zip
>
>
> I have been using CXF 2.2.3 (also tested with 2.2.5) with Spring 2.5.6 and an embedded Jetty instance successfully for several months. After the release of Spring 3.0, I have tried migrating to the new Spring version. Now the CXF Servlet is failing with a nullpointerexception on the 'updateContext' method:
> Caused by: java.lang.NullPointerException
> 	at org.apache.cxf.transport.servlet.CXFServlet.updateContext(CXFServlet.java:125)
> 	at org.apache.cxf.transport.servlet.CXFServlet.onApplicationEvent(CXFServlet.java:182)
> 	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97)
> 	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:294)
> 	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:296)
> 	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:858)
> 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:419)
> The line that is failing is:
>    resourceManager.addResourceResolver(new ServletContextResourceResolver(servletConfig.getServletContext()));
> I can only reproduce this issue using an 'embedded' jetty instance, I have attached a test case. By switching between spring 2.5.6 and spring 3.0, you can see from the log output that the servlet successfully initialized under 2.5.6, but fails under 3.0.
> I understand this may be a very narrow case involving only this method of loading the servlet, so if no fix is required in CXF, some advice as to a workaround would be very welcome. Thank you.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.