You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Freeman Fang (JIRA)" <ji...@apache.org> on 2014/08/14 10:26:12 UTC
[jira] [Assigned] (CXF-5946) ensure unregister cxf http transport
Servlet OSGi service before we re-register it
[ https://issues.apache.org/jira/browse/CXF-5946?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Freeman Fang reassigned CXF-5946:
---------------------------------
Assignee: Freeman Fang
> ensure unregister cxf http transport Servlet OSGi service before we re-register it
> ----------------------------------------------------------------------------------
>
> Key: CXF-5946
> URL: https://issues.apache.org/jira/browse/CXF-5946
> Project: CXF
> Issue Type: Bug
> Affects Versions: 3.0.1
> Reporter: Freeman Fang
> Assignee: Freeman Fang
> Fix For: 3.0.2, 3.1.0
>
>
> In OSGi, when cxf-http-transport configuration get updated from ConfigAdmin service, we re-register cxf http transport Servlet with new configuration props, this can cause two same Servlet instances conflict, which in turn can cause error in pax-web like
> {code}
> -whiteboard - 3.0.7 | Registration skipped for [ServletWebElement{mapping=DefaultServletMapping{httpContextId=null,urlPatterns=null,initParams={},servlet=org.apache.cxf.transport.servlet.CXFNonSpringServlet@cc5f977, alias=/api, servletNamecxf-osgi-transport-servlet}}] due to error during registration
> javax.servlet.ServletException: servlet already registered with a different alias
> at org.ops4j.pax.web.service.spi.model.ServerModel.addServletModel(ServerModel.java:121)[100:org.ops4j.pax.web.pax-web-spi:3.0.7]
> at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerServlet(HttpServiceStarted.java:206)[101:org.ops4j.pax.web.pax-web-runtime:3.0.7]
> at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerServlet(HttpServiceStarted.java:189)[101:org.ops4j.pax.web.pax-web-runtime:3.0.7]
> at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerServlet(HttpServiceStarted.java:174)[101:org.ops4j.pax.web.pax-web-runtime:3.0.7]
> at org.ops4j.pax.web.service.internal.HttpServiceProxy.registerServlet(HttpServiceProxy.java:67)[101:org.ops4j.pax.web.pax-web-runtime:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.element.ServletWebElement.register(ServletWebElement.java:61)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.WebApplication.registerWebElement(WebApplication.java:254)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.WebApplication.registerWebElements(WebApplication.java:232)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.WebApplication.registerHttpContext(WebApplication.java:223)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.WebApplication.serviceChanged(WebApplication.java:162)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.WebApplication.serviceChanged(WebApplication.java:51)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.util.tracker.ReplaceableService.bind(ReplaceableService.java:72)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> at org.ops4j.pax.web.extender.whiteboard.internal.util.tracker.ReplaceableService$Customizer.addingService(ReplaceableService.java:87)[125:org.ops4j.pax.web.pax-web-extender-whiteboard:3.0.7]
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)