[JBoss JIRA] (JBWS-3847) Memory leak in JBoss WS CXF Client's HandlerChainSortInterceptor
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/JBWS-3847?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on JBWS-3847:
-----------------------------------------------
Kabir Khan <kkhan(a)redhat.com> changed the Status of [bug 1155490|https://bugzilla.redhat.com/show_bug.cgi?id=1155490] from NEW to MODIFIED
> Memory leak in JBoss WS CXF Client's HandlerChainSortInterceptor
> ----------------------------------------------------------------
>
> Key: JBWS-3847
> URL: https://issues.jboss.org/browse/JBWS-3847
> Project: JBoss Web Services
> Issue Type: Bug
> Components: jbossws-cxf
> Affects Versions: jbossws-cxf-4.3
> Reporter: Tadayoshi Sato
> Assignee: Alessio Soldano
> Fix For: jbossws-cxf-4.3.2, jbossws-cxf-5.0
>
>
> {{HandlerChainSortInterceptor.handleMessage(Message)}} sorts and sets JAX-WS handlers every time it handles a SOAP message:
> {code:java}
> public void handleMessage(Message message) throws Fault
> {
> if (binding != null) {
> @SuppressWarnings("rawtypes")
> List<Handler> list = binding.getHandlerChain();
> if (list != null && !list.isEmpty()) {
> Collections.sort(list, comparator);
> binding.setHandlerChain(list);
> }
> }
> }
> {code}
> However, inside the {{org.apache.cxf.jaxws.binding.AbstractBindingImpl}} and {{org.apache.cxf.jaxws.support.JaxWsEndpointImpl}} implementations the handler chain is not reset every time but piled up with interceptors, which leads to subtle but indefinite memory leak in JBoss WS CXF client.
> Furthermore, {{org.apache.cxf.jaxws.support.JaxWsEndpointImpl}} holds the interceptors as a kind of {{java.util.concurrent.CopyOnWriteArrayList}}. So modifying the growing list of interceptors per each message should cause a growing performance drawback, which is also not a good implementation.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
10 years
[JBoss JIRA] (JBWS-3842) Cannot boot server with 2+ handlers in the same predefined configuration handler chain
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/JBWS-3842?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on JBWS-3842:
-----------------------------------------------
Kabir Khan <kkhan(a)redhat.com> changed the Status of [bug 1153954|https://bugzilla.redhat.com/show_bug.cgi?id=1153954] from ASSIGNED to MODIFIED
> Cannot boot server with 2+ handlers in the same predefined configuration handler chain
> --------------------------------------------------------------------------------------
>
> Key: JBWS-3842
> URL: https://issues.jboss.org/browse/JBWS-3842
> Project: JBoss Web Services
> Issue Type: Bug
> Components: jbossws-cxf, jbossws-integration
> Affects Versions: jbossws-cxf-4.3
> Reporter: Alessio Soldano
> Assignee: Alessio Soldano
> Fix For: jbossws-cxf-4.3.2, jbossws-cxf-5.0
>
>
> Commit https://github.com/wildfly/wildfly/commit/e32f27d433ad3da41ef042f1ad9b950... introduced a regressions when having multiple handlers in the same handler-chain within one of the pre-defined configuration in the webservices subsystem:
> {noformat}
> 5:49:24,653 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.ws.endpoint-config.Recording-Endpoint-Config.pre-handler-chain.recording-handlers: org.jboss.msc.service.StartException in service jboss.ws.endpoint-config.Recording-Endpoint-Config.pre-handler-chain.recording-handlers: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_60]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_60]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_60]
> Caused by: org.jboss.msc.inject.InjectionException: Value already set for this injector
> at org.jboss.msc.inject.RetainingInjector.inject(RetainingInjector.java:50) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.as.webservices.dmr.ListInjector.inject(ListInjector.java:23)
> at org.jboss.msc.inject.CastingInjector.inject(CastingInjector.java:55) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> ... 3 more
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
10 years
[JBoss JIRA] (JBWS-3852) Change RemoteDeployer to add security domain default with cache-type
by Jim Ma (JIRA)
[ https://issues.jboss.org/browse/JBWS-3852?page=com.atlassian.jira.plugin.... ]
Jim Ma updated JBWS-3852:
-------------------------
Description:
Add security domain for test use with "catch-type=default":
<security-domain name="BlueaditServicesWS-SecurityDomain" cache-type="default">
This will enable picketBox caches authetnciated info. All the authenticated principal, subject and credentail will be cached in JBossCachedAuthenticationManager. After add this, ejb securityContextInterceptor can get authenticated credential from cache put by servlet authentication and directly compare the passed in crendential to validate without call the callbackhandler and do the real authentication work again.
was:
Add security domain for test use with "catch-type=default":
<security-domain name="BlueaditServicesWS-SecurityDomain" cache-type="default">
> Change RemoteDeployer to add security domain default with cache-type
> ---------------------------------------------------------------------
>
> Key: JBWS-3852
> URL: https://issues.jboss.org/browse/JBWS-3852
> Project: JBoss Web Services
> Issue Type: Task
> Components: jbossws-integration
> Affects Versions: jbossws-cxf-4.3.1
> Reporter: Jim Ma
> Fix For: jbossws-cxf-5.0
>
>
> Add security domain for test use with "catch-type=default":
> <security-domain name="BlueaditServicesWS-SecurityDomain" cache-type="default">
> This will enable picketBox caches authetnciated info. All the authenticated principal, subject and credentail will be cached in JBossCachedAuthenticationManager. After add this, ejb securityContextInterceptor can get authenticated credential from cache put by servlet authentication and directly compare the passed in crendential to validate without call the callbackhandler and do the real authentication work again.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
10 years
[JBoss JIRA] (JBWS-3842) Cannot boot server with 2+ handlers in the same predefined configuration handler chain
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/JBWS-3842?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on JBWS-3842:
-----------------------------------------------
Panagiotis Sotiropoulos <psotirop(a)redhat.com> changed the Status of [bug 1157607|https://bugzilla.redhat.com/show_bug.cgi?id=1157607] from NEW to ASSIGNED
> Cannot boot server with 2+ handlers in the same predefined configuration handler chain
> --------------------------------------------------------------------------------------
>
> Key: JBWS-3842
> URL: https://issues.jboss.org/browse/JBWS-3842
> Project: JBoss Web Services
> Issue Type: Bug
> Components: jbossws-cxf, jbossws-integration
> Affects Versions: jbossws-cxf-4.3
> Reporter: Alessio Soldano
> Assignee: Alessio Soldano
> Fix For: jbossws-cxf-4.3.2, jbossws-cxf-5.0
>
>
> Commit https://github.com/wildfly/wildfly/commit/e32f27d433ad3da41ef042f1ad9b950... introduced a regressions when having multiple handlers in the same handler-chain within one of the pre-defined configuration in the webservices subsystem:
> {noformat}
> 5:49:24,653 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.ws.endpoint-config.Recording-Endpoint-Config.pre-handler-chain.recording-handlers: org.jboss.msc.service.StartException in service jboss.ws.endpoint-config.Recording-Endpoint-Config.pre-handler-chain.recording-handlers: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_60]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_60]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_60]
> Caused by: org.jboss.msc.inject.InjectionException: Value already set for this injector
> at org.jboss.msc.inject.RetainingInjector.inject(RetainingInjector.java:50) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.as.webservices.dmr.ListInjector.inject(ListInjector.java:23)
> at org.jboss.msc.inject.CastingInjector.inject(CastingInjector.java:55) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> ... 3 more
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
10 years