[ https://issues.apache.org/jira/browse/CXF-5791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15352413#comment-15352413 ]
Maninder Singh commented on CXF-5791: ------------------------------------- Hi, Can you please let me know, from which version onward the fix is present ? Thanks & Regards, Maninder > Could not send a message. Caused by HTTP response '404: Not Found' > ------------------------------------------------------------------ > > Key: CXF-5791 > URL: https://issues.apache.org/jira/browse/CXF-5791 > Project: CXF > Issue Type: Bug > Components: Core > Affects Versions: 3.0.1 > Environment: GNU/Linux Debian sid with jdk1.7.0_60 (Java HotSpot(TM) > 64-Bit Server VM (build 24.60-b09, mixed mode)) > Reporter: Guilherme Veloso Neves Oliveira > Assignee: Akitoshi Yoshida > Labels: patch > Fix For: 3.0.1 > > Attachments: NettyHttpClientRequest.patch > > > The issue https://issues.apache.org/jira/browse/CXF-5781 was resolved the > exception "port out of range: -1", but introduced the new exception below > (Could not send Message - HTTP response '404: Not Found') > What is surprising for me is that the application server hosting the > webservice runs an instance of JBoss (Red Hat) and not IIS (Microsoft). I say > this because the HTTP header response for code 404 was produced by an IIS > server (Microsoft). In DEBUG mode, I collected the correct header produced by > JBOSS and wrong produced by IIS (Microsoft). I caught these two headers > stopping code execution in getResponseCode () method of the class $ > org.apache.cxf.transport.http.netty.client.NettyHttpConduit > NettyWrappedOutputStream. > The wrong HTTP header was produced simply running the code! > The correct HTTP header was produced as follows: at runtime, in > initializePorts() method of class org.apache.cxf.jaxws.ServiceImpl.java the > value of the local variable called "address" (in line 210, before calling the > method addPort) was changed to include the number of TCP port 443 > (https://homologwsincom.in.gov.br:443/services/servicoIN). With this change > again (the reasons are described in > https://issues.apache.org/jira/browse/CXF-5781), everything worked normally. > Despite trying to create a patch, I did not get success. So, I would ask that > the TCP port number was not removed from the local variable called "address". > Below the headers HTTP: > ========================================================== > Correct Header > DefaultFullHttpResponse(decodeResult: success) > HTTP/1.1 200 OK > Date: Mon, 09 Jun 2014 01:22:57 GMT > X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1 > Content-Type: text/xml;charset=UTF-8 > Vary: Accept-Encoding,User-Agent > Keep-Alive: timeout=20, max=100 > Connection: Keep-Alive > Content-Length: 730 > ------------------------------------------------------------------------------------- > Wrong Header > DefaultFullHttpResponse(decodeResult: success) > HTTP/1.1 404 Not Found > Date: Mon, 09 Jun 2014 01:20:52 GMT > Server: Microsoft-IIS/7.5 > Content-Type: text/html; charset=ISO-8859-1 > X-Powered-By: ASP.NET > Vary: Accept-Encoding,User-Agent > Keep-Alive: timeout=5, max=100 > Connection: Keep-Alive > Content-Length: 1245 > ========================================================= > Below, the stacktrace: > Jun 08, 2014 10:09:05 PM org.apache.cxf.phase.PhaseInterceptorChain > doDefaultLogging > WARNING: Interceptor for > {http://xfire.ws.incom}servicoIN#{http://xfire.ws.incom}ConsultaFormasPagamento > 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) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307) > at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:514) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:423) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) > at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:137) > at com.sun.proxy.$Proxy35.consultaFormasPagamento(Unknown Source) > at > incom.ws.xfire.ServicoINPortType_ServicoINHttpPort_Client.main(ServicoINPortType_ServicoINHttpPort_Client.java:60) > Caused by: org.apache.cxf.transport.http.HTTPException: HTTP response '404: > Not Found' when communicating with > https://homologwsincom.in.gov.br/services/servicoIN > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1573) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1525) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1330) > at > org.apache.cxf.transport.http.netty.client.NettyHttpConduit$NettyWrappedOutputStream.close(NettyHttpConduit.java:153) > at > org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) > at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638) > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) > ... 9 more > Exception in thread "main" javax.xml.ws.WebServiceException: Could not send > Message. > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:148) > at com.sun.proxy.$Proxy35.consultaFormasPagamento(Unknown Source) > at > incom.ws.xfire.ServicoINPortType_ServicoINHttpPort_Client.main(ServicoINPortType_ServicoINHttpPort_Client.java:60) > Caused by: org.apache.cxf.transport.http.HTTPException: HTTP response '404: > Not Found' when communicating with > https://homologwsincom.in.gov.br/services/servicoIN > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1573) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1525) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1330) > at > org.apache.cxf.transport.http.netty.client.NettyHttpConduit$NettyWrappedOutputStream.close(NettyHttpConduit.java:153) > at > org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) > at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638) > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307) > at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:514) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:423) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) > at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:137) > ... 2 more -- This message was sent by Atlassian JIRA (v6.3.4#6332)