Re: AW: AW: Connection reset when not using tcpmonitor
Humberto Costa de Santana <[email protected]>
| Newsgroups | gmane.text.xml.axis.user |
|---|---|
| Message-ID | <[email protected]> |
Hello Josef, thanks a lot for your help. I'll explain exactly what I am trying to do. The company where I work has an equipment to make video conferences. This equipment has a webservice made in ASP.net that is used to arrange rooms and systems to realize the conferences. So I don't have the server side source code. I can't make any change in it. I'm trying to consume the above mentioned webservice with axis2 (I tried with axis 1 as well and got the same error). I generated all the client beans using Eclipse tool and it works perfectly when I use TCP/IP monitor tool (that comes with Eclipse) to see the xml flow. But the same client does not work when I run it right to the webservice. Example: When I run the client with the address http://localhost:8081/tms/external/Booking/BookingService.asmx everything works, because this is the address to TCP/IP monitor, and TCP/IP Monitor is responsible to connect with the server. But when I use the right address, that is http://serverhostname/tms/external/Booking/BookingService.asmx, the same client does not work. My client doesn't have axis2.xml configuration. I'll try to adjust the transport according to your tip. I'll tell you if it works. Thanks a lot *Humberto Costa de Santana* Grupo de Desenvolvimento de Sistemas - AI - Reitoria Em 06-11-2012 13:49, Stadelmann Josef escreveu: > Humberto, > > can you check at your server /catalina_home/webapps/WEB-INF/conf/axis2.xml > for proper Transport Ins selection. > > the default configuration assumes that Axis2Servlet only receives request through HTTP. > > in case you have uncommented for tcp, comment it out and make sure only http is engaged! > <!--Uncomment if you want to have TCP transport support--> > <!--transportReceiver name="tcp" > class="org.apache.axis2.transport.tcp.TCPServer"> > <parameter name="port">6060</parameter-->> > make sure you comment out as shown above the tcp transport. > > > Also check that the proper Transport Outs are enabled! > i.e. uncomment as shown below for not having any TCP outgoing transports selected > <!--Uncomment if you want to have TCP transport support--> > <!-- > <transportSender name="tcp" > class="org.apache.axis2.transport.tcp.TCPTransportSender"/> > --> > > outgoing and incoming is sometime confusing. > it depends what your axis2.xml configurations are. > > if your axis2.xml configures a service > or > if your axis2.xml configures your client, > the meanings are different. > > So given you have an axis2.xml to configure your client, look at this as well. > And may you can show me your service.xml content. > > Also, how is your client configuring done for startup? > > Josef > > > > > Von: Humberto Costa de Santana [mailto:[email protected]] > Gesendet: Montag, 5. November 2012 19:17 > An: [email protected] > Betreff: Re: AW: Connection reset when not using tcpmonitor > > Hi Josef, thanks for your reply. > > I tested with Wireshark and it seems that my client is sending exactly the same xml with or without tcpmonitor. > I really don't know why when I use the same client using tcpmonitor it works, while when I try directly to webservice it does not work. > > But I found a strange thing. When I configure tcpmonitor to tcp instead off http I get the same error. > > So. It seems that my client is sending message throught tcp and the server accepts only http. > > Is it possible that my client is using tcp instead of http to send the messages to the server? > If so how can I solve it? > > Thanks in advance > > PS: The server is ASP .net and the client is axis and the beans were made using Eclipse > > > Humberto Costa de Santana > Grupo de Desenvolvimento de Sistemas - AI - Reitoria > Em 01-11-2012 07:18, Stadelmann Josef escreveu: > 1. I would look at the stack trace below; > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > "Server.userException", so the origin is somewhat clear! It is generated at the server/service side of the pond for whatever reason. > If this happens at the service, then it has potentially nothing to do with your client code. > Try to find the condition and place in code where this Server.userException is generated? > > 2. I would use a Network Protocol Analyzer like Wireshark and lookout for a TCP RST issued sometimes by Windows. > > 3. In the past we observed this TCP RST signal may times with Wireshark, and we could see a distributed NetBeans plugin fail, loosing connection as FTP client to its remote FTP server. Then engineering hat to deal with that and make a new plugin which was able to recover from this situation on a TCP RST. > > > 4. if TCP RST (RESET) is not observed then it might be one of the many time outs one can adjust i.e. for Tomcat. > > Josef > > > Von: Humberto Costa de Santana [mailto:[email protected]] > Gesendet: Mittwoch, 31. Oktober 2012 17:19 > An: [email protected] > Betreff: Connection reset when not using tcpmonitor > > I'm facing a very strange problem when consuming a webservice. > > When I consume the webservice using tcpmonitor it works fine. But when I use the real url I have the following problem: > > Exception in thread "main" AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.net.SocketException: Connection reset > faultActor: > faultNode: > faultDetail: > {http://xml.apache.org/axis/}stackTrace:java.net.SocketException: Connection reset > at java.net.SocketInputStream.read(SocketInputStream.java:189) > at java.net.SocketInputStream.read(SocketInputStream.java:121) > at java.io.BufferedInputStream.fill(BufferedInputStream.java:235) > at java.io.BufferedInputStream.read(BufferedInputStream.java:254) > at org.apache.axis.transport.http.HTTPSender.readHeadersFromSocket(HTTPSender.java:583) > at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:143) > at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) > at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) > at org.apache.axis.client.Call.invokeEngine(Call.java:2784) > at org.apache.axis.client.Call.invoke(Call.java:2767) > at org.apache.axis.client.Call.invoke(Call.java:2443) > at org.apache.axis.client.Call.invoke(Call.java:2366) > at org.apache.axis.client.Call.invoke(Call.java:1812) > at net.tandberg._2004._02.tms.external.booking.BookingServiceSoapStub.saveConference(BookingServiceSoapStub.java:681) > at test.client.TesteBooking.main(TesteBooking.java:51) > > Does somebody know what is happening? > > Thanks in advance