Error combining Javamelody with CXF and IBM Websphere Liberty Profile

827 views
Skip to first unread message

haage...@gmail.com

unread,
Nov 11, 2013, 10:18:48 AM11/11/13
to javam...@googlegroups.com

We're migrating to IBM Websphere 8.5.5 Liberty Profile.  Liberty Profile is an OSGI-based server, and we're not using the built in CXF-implementation.  Instead we're using our own, which we bundle with the war we deploy.

We never had problems with JavaMelody before, but now we're getting exceptions in the logs whenever a webservice is accessed.  If I remove the JavaMelody-filter, the exceptions go away.  Note that although we get exceptions, the webservices actually return a response.  I'm testing with SoapUI, and the response looks fine to me.

I've tried upgrading "everything".  I upgraded JavaMelody to versjon 1.47.0 (we were using 1.41), I upgraded the Java-version to JDK1.7, I upgraded CXF to 2.7.6 (from 2.6.2), I upgraded JaxB etc to the versions that is bundled with JDK1.7.  The stacktrace remains the same.

I'm hoping that someone here might understand what is wrong and help me solve it. 

Regards, Haagen

Here is the stacktrace:

2013-11-11 15:34:03,542 WARN org.apache.cxf.phase.PhaseInterceptorChain Default Executor-thread-4 [] - Interceptor for {http://xmlns.myownnet.no/etterlysning/etterlysningtjenester/v1.6/sokmultikategoriservice}SokMultikategoriService#{http://xmlns.myownnet.no/etterlysning/etterlysningtjenester/v1.6/sokmultikategoriservice}sokPersonDokument has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
       at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64) ~[na:2.7.6]
       at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) [na:2.7.6]
       at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:77) [na:2.7.6]
       at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) [na:2.7.6]
       at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) [na:2.7.6]
       at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) [na:2.7.6]
       at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) [na:2.7.6]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) [na:2.7.6]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) [na:2.7.6]
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:595) [com.ibm.ws.javaee.servlet.3.0_1.0.1.jar:na]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) [na:2.7.6]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1240) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:760) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:127) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:88) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:208) [na:1.47.0]
       at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:181) [na:1.47.0]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) [na:3.1.0.RELEASE]
       at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:949) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1029) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4499) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.handleRequest(DynamicVirtualHost.java:282) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:954) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:252) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:584) [com.ibm.ws.transport.http_1.0.2.jar:na]
       at com.ibm.ws.threading.internal.Worker.executeWork(Worker.java:439) [com.ibm.ws.threading_1.0.3.jar:na]
       at com.ibm.ws.threading.internal.Worker.run(Worker.java:421) [com.ibm.ws.threading_1.0.3.jar:na]
       at java.lang.Thread.run(Thread.java:722) [na:1.7.0_04]
Caused by: java.io.IOException: Stream is closed
       at com.ibm.wsspi.http.HttpOutputStream.validate(HttpOutputStream.java:187) ~[na:na]
       at com.ibm.wsspi.http.HttpOutputStream.flush(HttpOutputStream.java:555) ~[na:na]
       at com.ibm.ws.webcontainer.osgi.response.WCOutputStream.flush(WCOutputStream.java:213) ~[na:na]
       at net.bull.javamelody.FilterServletOutputStream.flush(FilterServletOutputStream.java:52) ~[na:1.47.0]
       at net.bull.javamelody.FilterServletResponseWrapper.flushBuffer(FilterServletResponseWrapper.java:146) ~[na:1.47.0]
       at org.apache.cxf.transport.http.AbstractHTTPDestination$WrappedOutputStream.close(AbstractHTTPDestination.java:729) ~[na:2.7.6]
       at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) ~[na:2.7.6]
       at org.apache.cxf.transport.http.AbstractHTTPDestination$BackChannelConduit.close(AbstractHTTPDestination.java:658) ~[na:2.7.6]
       at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) ~[na:2.7.6]
       ... 69 common frames omitted
2013-11-11 15:34:03,546 WARN org.apache.cxf.phase.PhaseInterceptorChain Default Executor-thread-4 [] - Interceptor for {http://xmlns.myownnet.no/etterlysning/etterlysningtjenester/v1.6/sokmultikategoriservice}SokMultikategoriService#{http://xmlns.myownnet.no/etterlysning/etterlysningtjenester/v1.6/sokmultikategoriservice}sokPersonDokument has thrown exception, unwinding now
org.apache.cxf.binding.soap.SoapFault: Error writing to XMLStreamWriter.
       at org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor.handleMessage(SoapOutInterceptor.java:289) ~[na:2.7.6]
       at org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor.handleMessage(SoapOutInterceptor.java:271) ~[na:2.7.6]
       at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) [na:2.7.6]
       at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:113) [na:2.7.6]
       at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:331) [na:2.7.6]
       at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(OutgoingChainInterceptor.java:77) [na:2.7.6]
       at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) [na:2.7.6]
       at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) [na:2.7.6]
       at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) [na:2.7.6]
       at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) [na:2.7.6]
       at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) [na:2.7.6]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) [na:2.7.6]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) [na:2.7.6]
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:595) [com.ibm.ws.javaee.servlet.3.0_1.0.1.jar:na]
       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) [na:2.7.6]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1240) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:760) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:127) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:88) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:208) [na:1.47.0]
       at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:181) [na:1.47.0]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) [na:3.1.0.RELEASE]
       at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) [na:3.1.0.RELEASE]
       at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) [na:3.1.1.RELEASE]
       at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) [na:3.1.1.RELEASE]
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:85) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:949) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1029) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4499) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.handleRequest(DynamicVirtualHost.java:282) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:954) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:252) [com.ibm.ws.webcontainer_1.0.3.jar:na]
       at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:584) [com.ibm.ws.transport.http_1.0.2.jar:na]
       at com.ibm.ws.threading.internal.Worker.executeWork(Worker.java:439) [com.ibm.ws.threading_1.0.3.jar:na]
       at com.ibm.ws.threading.internal.Worker.run(Worker.java:421) [com.ibm.ws.threading_1.0.3.jar:na]
       at java.lang.Thread.run(Thread.java:722) [na:1.7.0_04]
Caused by: javax.xml.stream.XMLStreamException: No open start element, when trying to write end element
       at com.ctc.wstx.sw.BaseStreamWriter.throwOutputError(BaseStreamWriter.java:1522) ~[na:4.2.0]
       at com.ctc.wstx.sw.BaseStreamWriter.reportNwfStructure(BaseStreamWriter.java:1551) ~[na:4.2.0]
       at com.ctc.wstx.sw.BaseNsStreamWriter.doWriteEndTag(BaseNsStreamWriter.java:648) ~[na:4.2.0]
       at com.ctc.wstx.sw.BaseNsStreamWriter.writeEndElement(BaseNsStreamWriter.java:280) ~[na:4.2.0]
       at org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor.handleMessage(SoapOutInterceptor.java:280) ~[na:2.7.6]
       ... 72 common frames omitted

Anders Båtstrand

unread,
Dec 3, 2013, 5:43:26 AM12/3/13
to javam...@googlegroups.com
Hi

We are using IBM Websphere Full Profile 8.5.0/5, CXF 2.7.7, Java Melody 1.44/47, and does not have this problem.

Have you tried Java Melody 1.48? As they now log the SOAP method invoked, maybe some other things there changed as well?

Best regards,

Anders Båtstrand

Anders Båtstrand

unread,
Feb 11, 2014, 9:53:39 AM2/11/14
to javam...@googlegroups.com
We are now moving to Websphere Liberty Profile, and I see the same problem. Did you find a solution?

Anders

evernat

unread,
Jun 7, 2014, 5:03:40 PM6/7/14
to javam...@googlegroups.com
Hi,

I think that it is either an issue in IBM Liberty Profile or an issue in Apache CXF. Note that it is reproduced only in IBM Liberty Profile, and not in other app servers and not even in IBM Full Profile 8.5.0.
The issue is that L.P. does not accept that flush is called on an alreday closed stream, but Apache CXF closes stream and flushes response.
I suggest that you contact your IBM support.

For information:
1) an important part of your stack-trace is
Caused by: java.io.IOException: Stream is closed
       at com.ibm.wsspi.http.HttpOutputStream.validate(HttpOutputStream.java:187) ~[na:na]
       at com.ibm.wsspi.http.HttpOutputStream.flush(HttpOutputStream.java:555) ~[na:na]
       at com.ibm.ws.webcontainer.osgi.response.WCOutputStream.flush(WCOutputStream.java:213) ~[na:na]
       at net.bull.javamelody.FilterServletOutputStream.flush(FilterServletOutputStream.java:52) ~[na:1.47.0]
       at net.bull.javamelody.FilterServletResponseWrapper.flushBuffer(FilterServletResponseWrapper.java:146) ~[na:1.47.0]
       at org.apache.cxf.transport.http.AbstractHTTPDestination$WrappedOutputStream.close(AbstractHTTPDestination.java:729) ~[na:2.7.6]

2) See the CXF v2.7.10 code at
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.cxf/cxf-rt-transports-http/2.7.10/org/apache/cxf/transport/http/AbstractHTTPDestination.java#AbstractHTTPDestination.WrappedOutputStream.close%28%29

The reporter of the javamelody issue 411 says that catching the exception in the flushBuffer() method of net.bull.javamelody.FilterServletResponseWrapper works around the the issue.
I suggest that you click on the star icon on the left of the issue to be notified of comments:
https://code.google.com/p/javamelody/issues/detail?id=411

bye,
Emeric

jahe...@gmail.com

unread,
Jun 10, 2014, 9:23:10 AM6/10/14
to javam...@googlegroups.com
A related problem for Vlaadin: http://dev.vaadin.com/ticket/12283

They write that Liberty Profile uses OutputStreamWriter, which again gives an exception if you call flush() after close().

Seems like they fixed it by "removing out of order flush".

Pasting lines 727,28,29 and 30 from CXFs WrappedOutputStream:
 if (wrappedStream != null) {
                wrappedStream.close();
                response.flushBuffer();
            }


Vernat Emeric

unread,
Jun 10, 2014, 3:07:54 PM6/10/14
to javam...@googlegroups.com
Hi,

I don't know what IBM support would say about this issue. The best is to ask them. That's the goal of using IBM Liberty Profile, isn't it?

Otherwise, you could ask what the CXF community thinks about the issue (and about close before flushBuffer in WrappedOutputStream). Is there a message in their list(s) or an issue in their bug tracker about this?

bye,
Emeric
--

---
You received this message because you are subscribed to the Google Groups "javamelody" group.
To unsubscribe from this group and stop receiving emails from it, send an email to javamelody+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages