[#MIRTH-3458] Web Service Sender does not queue on connection

advertisement
[MIRTH-3458] Web Service Sender does not queue on connection error Created:
16/Sep/14 Updated: 17/Sep/14 Resolved: 16/Sep/14
Status:
Project:
Component/s:
Affects
Version/s:
Fix Version/s:
Closed
Mirth Connect
Server
3.0.1, 3.0.2, 3.0.3
Type:
Reporter:
Resolution:
Labels:
Remaining
Estimate:
Time Spent:
Original
Estimate:
Bug
Peter Scholz
Fixed
None
Not Specified
3.1.0
Priority:
Assignee:
Votes:
Minor
Nick Rupley
0
Not Specified
Not Specified
Description
Web Service dipatch failes and sets the message status to ERROR if no connection can be made to the external s
Web Service Sender error
ERROR MESSAGE: Error creating web service dispatch
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:249)
at
org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultPr
at
org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultPr
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:706)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDir
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirect
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324)
at com.mirth.connect.connectors.ws.WebServiceDispatcher.getWsdlUrl(WebServiceDispa
at
at
at
at
at
com.mirth.connect.connectors.ws.WebServiceDispatcher.createDispatch(WebServiceD
com.mirth.connect.connectors.ws.WebServiceDispatcher.send(WebServiceDispatcher.
com.mirth.connect.donkey.server.channel.DestinationConnector.handleSend(Destina
com.mirth.connect.donkey.server.channel.DestinationConnector.run(DestinationCon
java.lang.Thread.run(Thread.java:662)
Comments
Comment by Peter Scholz [ 16/Sep/14 ]
Connection errors are handled while making the actual call, but not creating the dispatch.
I think adding handling of connection errors in the outer try/catch block should solve the
problem.
Comment by Nick Rupley [ 16/Sep/14 ]
Revision 7373: Fixed bug that caused Web Service Sender dispatches to not queue if an error
occurred creating the Dispatch object. This could happen due to connectivity problems when
pulling down the WSDL, or it could happen if the service/port are not correct. Instead of setting
the status to ERROR, we'll just leave it as QUEUED in these cases. If a message gets queued
because the service or port are incorrect, fixing it in the connector properties and enabling
Regenerate Template will resolve the issue.
Comment by Jaysen Patton [ 17/Sep/14 ]
Created a Web service listener channel and a web service sender channel in 3.0.3. I had queuing
on my sending channel set to attempt first and tried to dispatch a message to my listener which
was stopped. The message in this case error-ed out! I performed this same test with a channel
reader and writer and verified this messaged queued up.
I exported these channels to 3.1 and attempted the same steps. This time, the channel correctly
queued the message. However, when I did the same for the channel writer/reader, the message
was queued and an error was logged on the dashboard to inform me the source connector was
stopped. Not sure if we would like to provide an error message within the dashboard but this
also occurs for other connectors such as TCP.
Generated at Tue Feb 09 05:19:21 PST 2016 using JIRA 6.2.7#6265sha1:91604a8de81892a3e362e0afee505432f29579b0.
Download