Persistent socket connection - socket write error

I'm connecting to a server using sockets. My application acts like a client, sending requests, and also like a server, listenning for notifications. I was using a client socket for the first task (send a message when required) and a server socket for the second (permanently listen for incoming messages). This needs to be some kind of persistent connection.
It happens now I'm required to send and receive using the same port. The only way I found to do this is to have a single socket (client) bound to a certain port. It connects to the server and one thread keeps listenning for incoming messages (by reading the input stream) while another process is launched whenever I need to send a message (by writing to the socket's output stream). The socket is created only once (when the application starts) and its output/input streams reused whenever needed.
This works well for a while. However, when I try to send a message after some idle time (lets say 20 minutes) strange things happen. The first attempt to send a message returns success (although nothing is actually received by the server). The second attempt returns java.net.SocketException: Software caused connection abort: socket write error. I don't understand this behaviour. Can there be a timeout? I only write to the socket after testing if it's connected.. So why is this failing? Also, any other ideas on how to send and receive using the same port? A different and better approach maybe..
Thanks in advance

Socket.isConnected just tells you whether you have personally called Socket.connect() or new Socket(host, port,...). It doesn't tell you anything about the state of the connection.
You should certainly issue periodic application 'pings' at suitable intervals, and many application protocols do this. For example, Java RMI reuses connections that are less than 15 seconds old but only if they pass a ping test.
In general however you can't insist on a persistent connection over TCP/IP, especially if you have this kind of hardware in the circuit. What you can do is recognize when the connection has been lost and form a new one. The network is going to fail somewhere some time and your program has to be robust against that.

Similar Messages

  • Socket Connection Error

    Hi,
    I m facing some strange issues in a java file. The requirement is something like, i need to process some business operation , connect to a third party vendor and they need to process some operation in 10 secs and they reverted back with the result. The whole process should complete in 15 secs.
    So for the first time while connection to the third party it is working fine, but for the second time it fails and showing connection failed in the UI. When i retires it is successfully connects. i checked the log file, there it is throwing exceptions some of the time. Please find the piece of code below. From the third party there is no issues from them , all the operations sucessfully done from their side..
    try {
    // open socket connection
    socket = openSocketConnection(host, port, connectTimeOut, responseTimeout);
    if(socket.isConnected()){
    // some steps of business processing.....
    // write request
    // read response
    // set pipeline
    // set error status
    catch(SocketTimeoutException ste){}
    catch (UnknownHostException uhe) {}
    catch (SocketException soe) {}
    catch (Exception e) { }
    finally {
    try {
    if (socket != null)socket.close();
    } catch (Exception e) { }
    // method for connecting the server....
    openSocketConnection(String host, int port, int connectTimeOut, int responseTimeout) throws SocketTimeoutException, ServiceException,IOException {
    Socket socket = null;
    socket = new Socket();
    socket.bind(null);
    socket.connect(new InetSocketAddress(host,port),connectTimeOut);
    if (socket.isConnected()) {
                   socket.setSoTimeout(responseTimeout);
    } else {
         throw new ServiceException("Error opening socket connection to Third party Vendor.");<------- mostly in second time throwing exception, but when retires working fine...
    return socket;
    Can anyone please help me out for this.

    Remove the isConnected() test and associated code: it's contributing nothing here. If the socket itself throws an exception then you have a problem. At the moment all you have is a self-inflicted wound.
    You can also remove the bind(null) call.

  • MDM_TECH 554_700 ABAP API giving socket connection error

    Hi,
    I have recently installed the MDM_TECH 554_700 on a 64Bit R/3 system and configured the ABAP API thru customization for a 32Bit MDM Server. Currently I am facing a problem with 'NiRaw2ConnectError: Connection refused' error and when I checked the detailed log it shows that "ERROR => mdeKernelError, NiRawToConnectError: The attempt to establish a socket connection caused an error (rc=-10) [mdm_mdeClien 265]". I have checked the necessary kernel files ( dw_mdm.dll) to make the socket connection between the MDM system, the OSS note 965209 & 950245 and not able to trace the problem. Is it possible to make the connection between 64Bit R/3 and 32Bit MDM server? Help on this issue is highly appreciated.
    Regards,
    Velu

    Alejandro,
    The MDM ABAP API & MDM Server Versions are same. Both of them are in SP04. Here is the details on the versions:
    MDM ABAP API - MDM SP04 provider, Server build  5.5.32.48  -  5.5.32.x
    MDM Server 5.5 - SP04  ( 5.5.32.65)
    Regards,
    Velu

  • Problem with socket connection

    have my gps reciver connected to the usb port - i have a daemon gpsd running which makes data available on tcp port 2947 for querying. when i do telnet, it gives proper data.
    but when i open a socket connection using java, it does not print anything as output. actually telnet asks for an escape charatcer so i am sending "r" initially to the server but still the program does not print anything as output.
    here is my java code -
    import java.io.*;
    import java.net.Socket;
    public class test2
    public static void main(String[] args)
    try
    Socket s = new Socket("localhost",2947);
    PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(
    s.getOutputStream())),true);
    out.println("r");
    BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
    String line;
    while(true)
    line = in.readLine();
    System.out.println(line);
    catch (Exception e)
    or sometimes it even shows error as
    Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    and this is the output which i get on telnet -
    ot@localhost ~]# telnet localhost 2947
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    r
    GPSD,R=1
    $GPRMC,000212,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1A
    $GPGSA,A,1,,,,,,,,,,,,,,,,*32
    $PGRME,400.00,0.00,0.00*7B
    $GPRMC,000213,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1B
    $GPGSA,A,1,,,,,,,,,,,,,,,,*32
    $PGRME,400.00,0.00,0.00*7B
    $GPRMC,000214,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1C
    $GPGSA,A,1,,,,,,,,,,,,,,,,*32

    Actually the problem does not seem to be in the code because i tried some basic client server programs (without any gpsd etc in picture) and even they are not working in linux though they work perfectly in windows (on the same machine). In linux it shows exception
    My socket programs dont work in linux it shows error -
    ot@localhost winc]# java parser
    Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
    at java.net.Socket.connect(Socket.java:452)
    at java.net.Socket.connect(Socket.java:402)
    at java.net.Socket.<init>(Socket.java:309)
    at java.net.Socket.<init>(Socket.java:124)
    at parser.main(parser.java:10)
    i have removed the firewall settings etc and it still doesnot work in linux
    what could be the cause for this?
    Sowmya

  • Unable to initialize socket connection to Content Server

    Hi,
    Webcenter installed on linux, content server installed on windows. Here is the error I see in the log files. I did added the ip address of the linux machine in windows host file but in Spaces I see JCR Connection problem. Any idea on what might be wrong. Here ar the settings I have Repository Connection:
    User Name: sysadmin
    CIS Socket Type: Socket
    Server Host: windowsmachine
    Server Port: 5444
    Authntication Method: Identity Propagation
    javax.jcr.RepositoryException: oracle.stellent.ridc.protocol.ProtocolException: Unable to initialize socket connection to Content Server
         at oracle.jcr.impl.ExceptionFactory.repository(ExceptionFactory.java:161)
         at oracle.stellent.jcr.IdcPersistenceManagerFactory.createPersistenceManager(IdcPersistenceManagerFactory.java:177)
         at oracle.jcr.impl.OracleRepositoryImpl.login(OracleRepositoryImpl.java:444)
         at oracle.vcr.jam.LoginTask.call(LoginTask.java:68)
         at oracle.vcr.jam.LoginTask.call(LoginTask.java:29)
         at oracle.webcenter.concurrent.Submission$2.run(Submission.java:495)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.webcenter.concurrent.Submission.runAsPrivileged(Submission.java:509)
         at oracle.webcenter.concurrent.Submission.run(Submission.java:436)
         at oracle.webcenter.concurrent.Submission$SubmissionFutureTask.run(Submission.java:792)
         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
         at oracle.webcenter.concurrent.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:657)
         at oracle.webcenter.concurrent.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:682)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: oracle.stellent.ridc.protocol.ProtocolException: Unable to initialize socket connection to Content Server
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:23)
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:10)
         at oracle.stellent.ridc.protocol.impl.SimpleConnectionPool.acquireConnection(SimpleConnectionPool.java:35)
         at oracle.stellent.ridc.IdcClient.sendRequest(IdcClient.java:130)
         at oracle.stellent.jcr.IdcPersistenceManagerFactory.createPersistenceManager(IdcPersistenceManagerFactory.java:163)
         ... 15 more
    Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.net.ConnectException: Connection refused
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.connect(SocketConnection.java:41)
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:21)
         ... 19 more
    Caused by: java.net.ConnectException: Connection refused
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
         at java.net.Socket.connect(Socket.java:519)
         at java.net.Socket.connect(Socket.java:469)
         at java.net.Socket.<init>(Socket.java:366)
         at java.net.Socket.<init>(Socket.java:180)
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.createSocket(SocketConnection.java:111)
         at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.connect(SocketConnection.java:38)
         ... 20 more

    This error usually occurs because you have not authorized the client's IP address in UCM. The steps to add the WebCenter host to the list of authorized clients are detailed in section [4.3.1.3.1 of the Installation Guide|http://download.oracle.com/docs/cd/E12839_01/install.1111/e12001/webcenterservice_install.htm#sthref161].
    Regards,
    Nicolas

  • Socket connection refused - please help!!!!

    My socket programs dont work in linux it shows error -
    ot@localhost winc]# java parser
    Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
    at java.net.Socket.connect(Socket.java:452)
    at java.net.Socket.connect(Socket.java:402)
    at java.net.Socket.<init>(Socket.java:309)
    at java.net.Socket.<init>(Socket.java:124)
    at parser.main(parser.java:10)
    Even the basic client server programs show this kind of error in linux. what is the cause for it? And the same programs work perfectly when run in windows. i have removed the firewall settings etc and it still doesnot work in linux
    Please help me solve the problem . it is very urgent.

    Actually i don't know how the firewall can cause the problem, can u please explain me.
    Here is the stack trace.
    INFO: Thread-3::Wed Dec 03 11:27:00 EST 2008 : resetConnection-->Connection couldn't be established with the Outbound message receiver at: 157.21.29.121:4996
    Dec 3, 2008 11:27:05 AM com.lsc.hl7.handler.THOutboundProperties log
    INFO: Thread-3::Wed Dec 03 11:27:05 EST 2008 : resetConnection-->Trying to reconnect[in IOException]........
    The Message is: Connection refused: connect
    The exception trace is :
    java.net.PlainSocketImpl.socketConnect(Native Method)
    java.net.PlainSocketImpl.doConnect(Unknown Source)
    java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    java.net.PlainSocketImpl.connect(Unknown Source)
    java.net.SocksSocketImpl.connect(Unknown Source)
    java.net.Socket.connect(Unknown Source)
    java.net.Socket.connect(Unknown Source)
    com.lsc.hl7.handler.THOutboundConnHandler.resetConnection(THOutboundConnHandler.java:129)
    com.lsc.hl7.handler.THOBHandlerThread.sendMailAndLogAboutORUReceiverConnectionLoss(THOBHandlerThread.java:199)
    com.lsc.hl7.handler.THOBHandlerThread.run(THOBHandlerThread.java:118)

  • Closing socket connection from 2nd thread

    I did some research on different operating systems to find a unique solution how to timeout a blocking recv call in one thread.
    Closing the connection from another thread helps but I found that there are two different methods how to close the connection:
    - either just calling close with the correct linger options
    - call shutdown first and then close
    Unfortunately most platforms work fine with only one of these methods and fail more or less severe with the other method.
    While I think to fully understand the behavior of Windows and Linux, Solaris is still a big question mark for me.
    I have some machines (running Solaris 8, 7 and 2.6) which work well with just closing and crash the system when using shutdown (while having bad luck in the timing of the other peer). And I have another 2.6 machine that behaves the other way around.
    I created a detailed description about the whole problem and my findings in a PDF if you are interested: http://www.webwasher.com/download/notes/timeoutblockingsocketcall.pdf
    Is anybody able to explain how the Solaris implementation works here?
    And does anybody know why I see the differences with the two 2.6 boxes? (I changed patch level and exchanged clib without success.
    Martin

    I have a main program which creates a thread.Why not create a thread once the object has been read.
    The thread would take some time to process this
    object before it accepts another object to be passed
    in from the main program.Threads are used for concurrent execution. If you don't want concurrent execution, don't use additional threads. Have the main program do the reading and execution and then it cannot read another object until it has finished executing the previous one.
    >
    However, I realise that my main program:
    s = new Socket("localhost", 2001);
    will produce a socket connection
    socket connection even if the thread is still
    processing the object. Why is this possible?This is what threads do. It is call multi-threading.
    Initially I thought the thread would lock the socketIt will lock the sockect when you lock it with synchronized. Howver you are creating a new socket each time so even this would not do what you suggest.
    and my main program would not be able to get a socket
    connection until my thread releases the socket.Everytime you call new Socket() it creates a NEW socket. You can open as many socket as the server can handle. (10000+)
    Code in my thread to accept a socket connection:
    server = new ServerSocket(2001);
    ois = new ObjectInputStream(server.accept().getInputStream());I would suggest putting the Socket created by server.accept() into a variable. Otherwise you will not be able to reply to the request, nor will you be able to close() the connection.
    How can I workaround this issue. Hope somebody can help. Thanks.You don't need a workaround, you need to fix the logic of your application.

  • JCOM throwing SocketException: Connection reset by peer: socket write error

    I have an ejb which is calling a simple ActiveX component using JCOM.
    Ocassionally the ejb loses the ability to connect to the ActiveX component. Any attempt to call a method results in a java.net.SocketException: Connection reset by peer: socket write error.
    However the ActiveX component continues to run correctly. I can still connect to it using a vb test client. This is using com to connect, not DCOM as used by JCOM(JIntegra).
    The application server and the ActiveX component are running on the same server.
    Any suggestions as to why the JIntegra DCOM request could be failing?
    Thanks,
    Greg.

    I have an ejb which is calling a simple ActiveX component using JCOM.
    Ocassionally the ejb loses the ability to connect to the ActiveX component. Any attempt to call a method results in a java.net.SocketException: Connection reset by peer: socket write error.
    However the ActiveX component continues to run correctly. I can still connect to it using a vb test client. This is using com to connect, not DCOM as used by JCOM(JIntegra).
    The application server and the ActiveX component are running on the same server.
    Any suggestions as to why the JIntegra DCOM request could be failing?
    Thanks,
    Greg.

  • Rmi - connection aborted:socket write error

    Weblogic 5.1 is running on my localhost and a remote object successfully registered on the weblogic. There is an applet trying to establish a connection and after the client is registered in the client list I get the following exception
    Thu Jan 25 11:29:06 PST 2001:<E> <ServletContext-General> Servlet failed with Ex
    ception
    java.net.SocketException: Connection aborted by peer: socket write error
    at java.net.SocketOutputStream.socketWrite(Native Method)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
    at weblogic.servlet.internal.ChunkUtils.writeChunks(ChunkUtils.java:88)
    at weblogic.servlet.internal.ServletOutputStreamImpl.flush(ServletOutput
    StreamImpl.java:121)
    at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(Servlet
    OutputStreamImpl.java:444)
    at weblogic.servlet.ClasspathServlet.sendResource(ClasspathServlet.java:
    114)
    at weblogic.servlet.ClasspathServlet.doGet(ClasspathServlet.java:87)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:105)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
    textImpl.java:742)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
    textImpl.java:686)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
    ContextManager.java:247)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
    a:361)
    at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:261)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    And the java console shows this message:
    java.lang.NoClassDefFoundError
    at weblogic/rmi/extensions/BasicRequest.init (BasicRequest.java)
    at weblogic/rmi/extensions/BasicRequest.<init> (BasicRequest.java:18)
    at weblogic/rmi/extensions/AbstractRemoteObjectReference.getRequest (AbstractRemoteObjectReference.java:71)
    at weblogic/jndi/internal/RemoteContextFactoryImpl_WLStub.getContext (RemoteContextFactoryImpl_WLStub.java:77)
    at weblogic/jndi/WLInitialContextFactoryDelegate.newRemoteContext (WLInitialContextFactoryDelegate.java:316)
    at weblogic/jndi/WLInitialContextFactoryDelegate.newContext (WLInitialContextFactoryDelegate.java:242)
    at weblogic/jndi/WLInitialContextFactoryDelegate.getInitialContext (WLInitialContextFactoryDelegate.java:205)
    at weblogic/jndi/Environment.getContext (Environment.java:122)
    at weblogic/jndi/Environment.getInitialContext (Environment.java:105)
    at weblogic/rmi/Naming.getContext (Naming.java:225)
    at weblogic/rmi/Naming.lookup (Naming.java:67)
    at AppletTest.init (AppletTest.java:30)
    at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
    at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
    at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
    at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
    at com/ms/applet/AppletPanel.run (AppletPanel.java)
    at java/lang/Thread.run (Thread.java
    Can someone help solve this problem.
    Thansk in advance,
    Nirmal R.

    The point where the failure occurs in in the initialization of the transaction framework, so I would guess that you do not have the plug-in for the applet.
    Nirmal R wrote:
    Weblogic 5.1 is running on my localhost and a remote object successfully registered on the weblogic. There is an applet trying to establish a connection and after the client is registered in the client list I get the following exception
    Thu Jan 25 11:29:06 PST 2001:<E> <ServletContext-General> Servlet failed with Ex
    ception
    java.net.SocketException: Connection aborted by peer: socket write error
    at java.net.SocketOutputStream.socketWrite(Native Method)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
    at weblogic.servlet.internal.ChunkUtils.writeChunks(ChunkUtils.java:88)
    at weblogic.servlet.internal.ServletOutputStreamImpl.flush(ServletOutput
    StreamImpl.java:121)
    at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(Servlet
    OutputStreamImpl.java:444)
    at weblogic.servlet.ClasspathServlet.sendResource(ClasspathServlet.java:
    114)
    at weblogic.servlet.ClasspathServlet.doGet(ClasspathServlet.java:87)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:105)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
    textImpl.java:742)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
    textImpl.java:686)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
    ContextManager.java:247)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
    a:361)
    at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:261)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    And the java console shows this message:
    java.lang.NoClassDefFoundError
    at weblogic/rmi/extensions/BasicRequest.init (BasicRequest.java)
    at weblogic/rmi/extensions/BasicRequest.<init> (BasicRequest.java:18)
    at weblogic/rmi/extensions/AbstractRemoteObjectReference.getRequest (AbstractRemoteObjectReference.java:71)
    at weblogic/jndi/internal/RemoteContextFactoryImpl_WLStub.getContext (RemoteContextFactoryImpl_WLStub.java:77)
    at weblogic/jndi/WLInitialContextFactoryDelegate.newRemoteContext (WLInitialContextFactoryDelegate.java:316)
    at weblogic/jndi/WLInitialContextFactoryDelegate.newContext (WLInitialContextFactoryDelegate.java:242)
    at weblogic/jndi/WLInitialContextFactoryDelegate.getInitialContext (WLInitialContextFactoryDelegate.java:205)
    at weblogic/jndi/Environment.getContext (Environment.java:122)
    at weblogic/jndi/Environment.getInitialContext (Environment.java:105)
    at weblogic/rmi/Naming.getContext (Naming.java:225)
    at weblogic/rmi/Naming.lookup (Naming.java:67)
    at AppletTest.init (AppletTest.java:30)
    at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
    at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
    at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
    at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
    at com/ms/applet/AppletPanel.run (AppletPanel.java)
    at java/lang/Thread.run (Thread.java
    Can someone help solve this problem.
    Thansk in advance,
    Nirmal R.

  • Connection reset by peer: socket write error

    Anybody can help me?
    I run vdbench to test our NAS server, but it always failed with "
    Slave localhost-0 aborting: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
    Error:         Windows System Error code: 64: ",  how to solve this fail ?
    conf file:
    fsd=fsd,anchor=Y:\dir,count=(11,15),depth=10,width=2,files=1,size=(10k,20,100k,20,160k,20,8m,20,10m,10,1g,5,2g,5)
    fwd=fwd1,fsd=(fsd11,fsd12,fsd13,fsd14,fsd15),rdpct=85,xfersize=(10k,22,100k,22,160k,22,8m,22,10m,12),fileio=random,fileselect=random,threads=5
    rd=rd1,fwd=fwd1,operations=read,fwdrate=max,format=yes,elapsed=10,interval=1
    logfile.html:
    14:22:49.510 Vdbench distribution: vdbench50401
    14:22:49.510
    14:22:49.526 input argument scanned: '-fcifs'
    14:22:49.526 java.vendor                   Sun Microsystems Inc.
    14:22:49.526 java.home                     C:\Program Files\Java\jre6
    14:22:49.526 java.vm.specification.version 1.0
    14:22:49.526 java.vm.version               16.3-b01
    14:22:49.526 java.vm.vendor                Sun Microsystems Inc.
    14:22:49.526 java.specification.version    1.6
    14:22:49.526 java.class.version            50.0
    14:22:49.526 user.name                     zcuser1002
    14:22:49.526 user.dir                      C:\Users\zcuser1002\Desktop\Y-vdbench-1021
    14:22:49.526 java.class.path               C:\Users\zcuser1002\Desktop\Y-vdbench-1021\;C:\Users\zcuser1002\Desktop\Y-vdbench-1021\classes;C:\Users\zcuser1002\Desktop\Y-vdbench-1021\vdbench.jar
    14:22:49.526 os.name                       Windows Server 2008 R2
    14:22:49.526 os.arch                       amd64
    14:22:49.526 os.version                    6.1
    14:22:49.526 sun.arch.data.model           64
    14:22:49.557 'fsd=fsd,count=(start,count)' added fsd11 Y:\dir11
    15:08:57.031       2704    0.0  0.00   0.9 4.42   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:08:58.030       2705  343.0 386.6   8.5 4.36   0.0    0.0  0.00  343.0 386.6  0.00 42.22  42.22  129071   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:08:59.031       2706   15.0 983.4   0.0 3.41   0.0    0.0  0.00   15.0 983.4  0.00  1.85   1.85  129160   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:09:51.406 localhost-0: anchor=Y:\dir15: Created 420 of 1024 files (41.02%)
    15:10:02.202       2707  12143 31.35   8.0 6.25   0.0    0.0  0.00  12143 31.35  0.00  1513 1513.9  130736   0.0  0.00   0.0  0.00  65.0 59795  65.0 202.8  67.0 44969   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.234       2708    0.0  0.00   8.6 8.40   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.249       2709    0.0  0.00  43.7 37.5   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00  27.0  4268   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.265       2710    0.0  0.00   0.0 0.00   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.296       2711    0.0  0.00 100.0 81.2   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.312       2712    0.0  0.00   0.0 0.00   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.312 localhost-0: 15:10:02.218 op: write  lun: Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file lba:   1484652544 0x587E0000 xfer:   131072 errno: Windows System Error code: 64: ??¡§????????????
    15:10:02.327 localhost-0: 15:10:02.234 op: write  lun: Y:\dir14\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file lba:   1971847168 0x75880000 xfer:   131072 errno: Windows System Error code: 64: ??¡§????????????
    15:10:02.343       2713    0.0  0.00 100.0 74.9   0.0    0.0  0.00    0.0  0.00  0.00  0.00   0.00       0   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00   0.0  0.00
    15:10:02.343
    15:10:02.343 **********************************************************
    15:10:02.343 Slave localhost-0 aborting: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
    Error:         Windows System Error code: 64: ??¡§????????????
    lba:           1484652544
    xfersize:      131072
    blocks_done:   11327
    bytes_done:    1484652544
    open_for_read: false
    15:10:02.343 **********************************************************
    15:10:02.343
    15:10:18.013 Exception from slave: localhost-0
    15:10:18.013
    15:10:18.013 common.failure():
      java.net.SocketException: Connection reset by peer: socket write error
    java.net.SocketException: Connection reset by peer: socket write error
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(Unknown Source)
    at java.net.SocketOutputStream.write(Unknown Source)
    at java.io.ObjectOutputStream$BlockDataOutputStream.drain(Unknown Source)
    at java.io.ObjectOutputStream$BlockDataOutputStream.setBlockDataMode(Unknown Source)
    at java.io.ObjectOutputStream.reset(Unknown Source)
    at Vdb.SlaveSocket.putMessage(SlaveSocket.java:277)
    at Vdb.CollectSlaveStats.<init>(CollectSlaveStats.java:121)
    at Vdb.Reporter.run(Reporter.java:183)
    localhost-0.stdout.html:
    stdout/stderr for slave=localhost-0
    14:22:50.072 14:22:50.072 SlaveJvm execution parameter:  '-m localhost'
    14:22:50.072 14:22:50.072 SlaveJvm execution parameter:  '-n localhost-10-141104-14.22.49.432'
    14:22:50.072 14:22:50.072 SlaveJvm execution parameter:  '-l localhost-0'
    14:22:50.072 14:22:50.072 SlaveJvm execution parameter:  '-p 5570'
    14:22:50.072 14:22:50.072 SlaveJvm positional parameter: 'SlaveJvm'
    14:22:50.118 14:22:50.118 successfully connected to master localhost
    14:22:50.118 14:22:50.118 Connection to localhost using port 5570 successful
    14:22:50.571 14:22:50.571 execute(): ls -l Y:\dir11
    14:22:50.618 14:22:50.618 execute(): ls -l Y:\dir12
    14:22:50.633 14:22:50.633 execute(): ls -l Y:\dir13
    14:22:50.664 14:22:50.664 execute(): ls -l Y:\dir14
    14:22:50.680 14:22:50.680 execute(): ls -l Y:\dir15
    14:22:50.711 14:22:50.711 Configuration interpretation took 0.45 seconds
    Link to Run Definitions:         <A HREF="#_225912260">format_for_rd1 For loops: None</A>
                                     <A HREF="#_156265924">rd1 For loops: None</A>
    14:22:50.852 14:22:50.852 Beginning of run setup
    14:22:50.852 14:22:50.852 **********************
    14:22:50.852
    14:22:50.852
    14:22:51.538 14:22:51.538 Completed the creation of the directory list for Y:\dir11: 2046 directories.
    14:22:56.811 14:22:56.811 Memory total Java heap:   77.438 MB; Free:   32.782 MB; Used:   44.655 MB;
    14:22:56.874 14:22:56.874 checkMemory()
    14:22:56.874 14:22:56.874 Memory total Java heap:   77.438 MB; Free:   52.364 MB; Used:   25.074 MB;
    14:23:03.426 14:23:03.426 Generated     1024 file names; total anchor size: 130.841g
    14:23:03.426 14:23:03.426 Writing control file for anchor=Y:\dir11 at start of run.
    14:23:03.457 14:23:03.441 Completed control file for anchor=Y:\dir11 at start of run.  dirs: 2046/2046 files: 1024/88 sizes: 130.841g/8.721g/0/0.0
    14:23:03.457 14:23:03.441 During anchor creation for anchor=Y:\dir11 there were 2046 directories and 88 files
    14:23:03.551 14:23:03.551 Completed the creation of the directory list for Y:\dir12: 2046 directories.
    14:23:08.902 14:23:08.902 Memory total Java heap:   77.438 MB; Free:   24.149 MB; Used:   53.288 MB;
    14:23:08.964 14:23:08.964 checkMemory()
    14:23:08.964 14:23:08.964 Memory total Java heap:   77.438 MB; Free:   50.640 MB; Used:   26.798 MB;
    14:23:15.579 14:23:15.579 Generated     1024 file names; total anchor size: 130.841g
    14:23:15.579 14:23:15.579 Writing control file for anchor=Y:\dir12 at start of run.
    14:23:15.594 14:23:15.594 Completed control file for anchor=Y:\dir12 at start of run.  dirs: 2046/2046 files: 1024/74 sizes: 130.841g/7.092g/0/0.0
    14:23:15.594 14:23:15.594 During anchor creation for anchor=Y:\dir12 there were 2046 directories and 74 files
    14:23:15.688 14:23:15.688 Completed the creation of the directory list for Y:\dir13: 2046 directories.
    14:23:21.210 14:23:21.210 Memory total Java heap:   74.688 MB; Free:   19.725 MB; Used:   54.963 MB;
    14:23:21.273 14:23:21.273 checkMemory()
    14:23:21.273 14:23:21.273 Memory total Java heap:   76.562 MB; Free:   48.176 MB; Used:   28.386 MB;
    14:23:28.168 14:23:28.168 Generated     1024 file names; total anchor size: 130.841g
    14:23:28.168 14:23:28.168 Writing control file for anchor=Y:\dir13 at start of run.
    14:23:28.184 14:23:28.184 Completed control file for anchor=Y:\dir13 at start of run.  dirs: 2046/2046 files: 1024/84 sizes: 130.841g/8.886g/0/0.0
    14:23:28.184 14:23:28.184 During anchor creation for anchor=Y:\dir13 there were 2046 directories and 84 files
    14:23:28.262 14:23:28.262 Completed the creation of the directory list for Y:\dir14: 2046 directories.
    14:23:33.785 14:23:33.785 Memory total Java heap:   74.250 MB; Free:   17.213 MB; Used:   57.037 MB;
    14:23:33.863 14:23:33.863 checkMemory()
    14:23:33.863 14:23:33.863 Memory total Java heap:   72.812 MB; Free:   42.829 MB; Used:   29.983 MB;
    14:23:40.976 14:23:40.976 Generated     1024 file names; total anchor size: 130.841g
    14:23:40.976 14:23:40.976 Writing control file for anchor=Y:\dir14 at start of run.
    14:23:40.976 14:23:40.976 Completed control file for anchor=Y:\dir14 at start of run.  dirs: 2046/2046 files: 1024/87 sizes: 130.841g/8.778g/0/0.0
    14:23:40.976 14:23:40.976 During anchor creation for anchor=Y:\dir14 there were 2046 directories and 87 files
    14:23:41.054 14:23:41.054 Completed the creation of the directory list for Y:\dir15: 2046 directories.
    14:23:46.296 14:23:46.296 Memory total Java heap:   74.062 MB; Free:   42.390 MB; Used:   31.672 MB;
    14:23:46.374 14:23:46.374 checkMemory()
    14:23:46.374 14:23:46.374 Memory total Java heap:  101.000 MB; Free:   68.809 MB; Used:   32.191 MB;
    14:23:52.958 14:23:52.958 Generated     1024 file names; total anchor size: 130.841g
    14:23:52.958 14:23:52.958 Writing control file for anchor=Y:\dir15 at start of run.
    14:23:52.989 14:23:52.973 Completed control file for anchor=Y:\dir15 at start of run.  dirs: 2046/2046 files: 1024/96 sizes: 130.841g/8.995g/0/0.0
    14:23:52.989 14:23:52.973 During anchor creation for anchor=Y:\dir15 there were 2046 directories and 96 files
    14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd11,operation=read:    20.0
    14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd12,operation=read:    20.0
    14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd13,operation=read:    20.0
    14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd14,operation=read:    20.0
    14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd15,operation=read:    20.0
    14:23:53.051 14:23:53.051 Started 8 threads for fwd=format,fsd=fsd11
    14:23:53.114 14:23:53.114 Started 8 threads for fwd=format,fsd=fsd12
    14:23:53.161 14:23:53.161 Started 8 threads for fwd=format,fsd=fsd13
    14:23:53.207 14:23:53.207 Started 8 threads for fwd=format,fsd=fsd14
    14:23:53.270 14:23:53.270 Started 8 threads for fwd=format,fsd=fsd15
    14:23:53.270 14:23:53.270 Started 40 FwgThreads
    14:23:53.270 14:23:53.270 Waiting for task synchronization
    14:23:53.270 14:23:53.270 task_wait_start_complete() end
    <a name="_225912260"></a><i><b>14:23:53.971 Starting RD=format_for_rd1</b></i>
    14:23:54.002 14:23:54.002 task_run_all(): 41 tasks
    14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir15 mkdir complete.
    14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir11 mkdir complete.
    14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir13 mkdir complete.
    14:23:54.066 14:23:54.066 Message to master: anchor=Y:\dir14 mkdir complete.
    14:23:54.066 14:23:54.066 Message to master: anchor=Y:\dir12 mkdir complete.
    14:24:24.685 14:24:24.685 Message to master: anchor=Y:\dir14: Created 130 of 1024 files (12.70%)
    14:24:56.311 14:24:56.311 Message to master: anchor=Y:\dir12: Created 130 of 1024 files (12.70%)
    14:25:40.473 14:25:40.464 Message to master: anchor=Y:\dir13: Created 140 of 1024 files (13.67%)
    14:32:52.125 14:32:52.125 Message to master: anchor=Y:\dir12: Created 140 of 1024 files (13.67%)
    14:33:30.374 14:33:30.374 Message to master: anchor=Y:\dir12: Created 160 of 1024 files (15.63%)
    14:34:33.842 14:34:33.842 Message to master: anchor=Y:\dir14: Created 170 of 1024 files (16.60%)
    14:35:49.810 14:35:49.810 Message to master: anchor=Y:\dir14: Created 180 of 1024 files (17.58%)
    14:36:34.451 14:36:34.451 Message to master: anchor=Y:\dir14: Created 190 of 1024 files (18.55%)
    14:38:13.437 14:38:13.437 Message to master: anchor=Y:\dir14: Created 200 of 1024 files (19.53%)
    14:39:01.966 14:39:01.966 Message to master: anchor=Y:\dir11: Created 210 of 1024 files (20.51%)
    14:39:57.837 14:39:57.837 Message to master: anchor=Y:\dir15: Created 220 of 1024 files (21.48%)
    14:41:51.763 14:41:51.763 Message to master: anchor=Y:\dir13: Created 220 of 1024 files (21.48%)
    14:42:31.156 14:42:31.156 Message to master: anchor=Y:\dir14: Created 240 of 1024 files (23.44%)
    14:45:32.607 14:45:32.607 Message to master: anchor=Y:\dir15: Created 260 of 1024 files (25.39%)
    14:46:44.611 14:46:44.611 Message to master: anchor=Y:\dir11: Created 270 of 1024 files (26.37%)
    14:47:53.707 14:47:53.707 Message to master: anchor=Y:\dir14: Created 280 of 1024 files (27.34%)
    14:48:25.032 14:48:25.032 Message to master: anchor=Y:\dir12: Created 280 of 1024 files (27.34%)
    14:48:56.946 14:48:56.946 Message to master: anchor=Y:\dir13: Created 290 of 1024 files (28.32%)
    14:50:40.869 14:50:40.868 Message to master: anchor=Y:\dir11: Created 300 of 1024 files (29.30%)
    14:51:22.062 14:51:22.062 Message to master: anchor=Y:\dir15: Created 330 of 1024 files (32.23%)
    14:53:55.390 14:53:55.390 Message to master: anchor=Y:\dir14: Created 350 of 1024 files (34.18%)
    14:56:20.897 14:56:20.897 Message to master: anchor=Y:\dir14: Created 360 of 1024 files (35.16%)
    14:58:08.513 14:58:08.513 Message to master: anchor=Y:\dir11: Created 360 of 1024 files (35.16%)
    14:59:34.933 14:59:34.933 Message to master: anchor=Y:\dir12: Created 360 of 1024 files (35.16%)
    15:02:15.234 15:02:15.234 Message to master: anchor=Y:\dir13: Created 370 of 1024 files (36.13%)
    15:02:48.482 15:02:48.482 Message to master: anchor=Y:\dir14: Created 380 of 1024 files (37.11%)
    15:04:27.359 15:04:27.359 Message to master: anchor=Y:\dir13: Created 380 of 1024 files (37.11%)
    15:05:57.406 15:05:57.406 Message to master: anchor=Y:\dir15: Created 390 of 1024 files (38.09%)
    15:07:18.982 15:07:18.982 Message to master: anchor=Y:\dir11: Created 390 of 1024 files (38.09%)
    15:08:15.419 15:08:15.419 Message to master: anchor=Y:\dir11: Created 410 of 1024 files (40.04%)
    15:08:50.624 15:08:50.624 Message to master: anchor=Y:\dir13: Created 410 of 1024 files (40.04%)
    15:09:51.406 15:09:51.406 Message to master: anchor=Y:\dir15: Created 420 of 1024 files (41.02%)
    15:10:02.202 15:10:02.202 file_write error2: 64
    15:10:02.202 15:10:02.202 file_write error2: 64
    15:10:02.202 15:10:02.202 handle: 0000000000000B38
    15:10:02.202 15:10:02.202 seek:   0000000075880000
    15:10:02.202 15:10:02.202 handle: 0000000000000BC0
    15:10:02.202 15:10:02.202 length: 0000000000020000
    15:10:02.202 15:10:02.202 seek:   00000000587E0000
    15:10:02.202 15:10:02.202 buffer: 0000000034430000
    15:10:02.202 15:10:02.202 length: 0000000000020000
    15:10:02.202 15:10:02.202 buffer: 000000002E3E0000
    15:10:02.234 15:10:02.234
    15:10:02.234 15:10:02.234 Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
    15:10:02.234 15:10:02.234 Error:         Windows System Error code: 64: ??¡§????????????
    15:10:02.234 15:10:02.234 lba:           1484652544
    15:10:02.234 15:10:02.234 xfersize:      131072
    15:10:02.234 15:10:02.234 blocks_done:   11327
    15:10:02.234 15:10:02.234 bytes_done:    1484652544
    15:10:02.234 15:10:02.234 open_for_read: false
    15:10:02.234 15:10:02.234
    15:10:02.234 java.lang.RuntimeException: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
    15:10:02.234 Error:         Windows System Error code: 64: ??¡§????????????
    15:10:02.234 lba:           1484652544
    15:10:02.234 xfersize:      131072
    15:10:02.234 blocks_done:   11327
    15:10:02.234 bytes_done:    1484652544
    15:10:02.234 open_for_read: false
    15:10:02.234  at Vdb.common.failure(common.java:308)
    15:10:02.234  at Vdb.ActiveFile.writeError(ActiveFile.java:611)
    15:10:02.234  at Vdb.ActiveFile.writeBlock(ActiveFile.java:458)
    15:10:02.234  at Vdb.FwgThread.doSequentialWrite(FwgThread.java:327)
    15:10:02.234  at Vdb.OpCreate.doOperation(OpCreate.java:51)
    15:10:02.234  at Vdb.OpFormat.doOperation(OpFormat.java:91)
    15:10:02.234  at Vdb.FwgThread.run(FwgThread.java:157)

    'Socket write error' is merely the master finding out that the slave aborted unexpectedly.
    It it the '64' you have to worry about.
    Windows system error code 64:
    (It appears that the Vdbench translation from number to text may have some language issues and therefore can not properly print it).
    ERROR_NETNAME_DELETED
    64 (0x40)
    The specified network name is no longer available.

  • Servletengine Unable to send back last chunk: Software caused connection abort: socket write error

    I have created a bundle for the class com.xxx.cq.wcm.foundation.profile.impl.TnailImages from the foundation file com.day.cq.wcm.foundation.profile.impl.ProfileImages.
    Here are the changes I made ot this class
    1. width and height for the default foundation class ProfileImages to have our own default width and height in TnailImages.
    2. selectors changed to our own like
    * @scr.property name="sling.servlet.selectors" values.0="adjust"
    *                                              values.1="adjust.small"
    3.   Variable changed to  private static final String THUMBNAIL = "small";
    4. Metatype annotation won't compile for CQ5.5  I changed this  * @scr.component metatype="false"
           to
         * @Component(immediate = true)
    This bundle compiled successfully and I see it in OSGi felix console, it is in start mode. Even then I did a restart of this bundle as well as whole CQ5.
    When I call an image using the following tag
    <img  alt="" src="/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg">
    there are no spases anywhere
    the servlet ThumbNailImages is not being call, I see the following error in error.log
    servletengine Unable to send back last chunk: Software caused connection abort: socket write error
    this image is not being displayed in the page, firebug displays failed to load URL
    Default img works fine
    <img  alt="" src="/content/dam/geometrixx/portraits/scott_reynolds.jpg.prof.thumbnail.jpg">
    Class com.day.cq.wcm.foundation.profile.impl.ProfileImages is available in
    /libs/foundation/src/impl/src/main/java/com/day/cq/wcm/foundation/profile/impl/ProfileImag es.java
    Here are my annotations * @Component(immediate = true) * @scr.service * @scr.property name="sling.servlet.resourceTypes" value="nt:file" * @scr.property name="sling.servlet.extensions" values.0="res" *                          values.1="jpg" *                          values.2="png" *                          values.3="gif" * @scr.property name="sling.servlet.selectors" values.0="adjust" *                                              values.1="adjust.small" */ It seems that this servlet is not being called, when I invoke http://xyz.com:4502/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg I am getting 404 Cannot serve request to /content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg in org.apache.sling.servlets.get.DefaultGetServlet
    3 (2013-05-20 11:02:40) TIMER_END{2,resolveServlet(JcrNodeResource, type=dam:Asset, superType=null, path=/content/dam/geometrixx/portraits/scott_reynolds.jpg)} Using servlet com.day.cq.dam.core.impl.servlet.BinaryProviderServlet 3 (2013-05-20 11:02:40) TIMER_END{2,ServletResolution} URI=/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg handled by Servlet=com.day.cq.dam.core.impl.servlet.BinaryProviderServlet
    It seems that my Servlet TnailImages is not being called, it is always going to default servlet.

    Hi Akhter,
    Seeme like in your servlet the value for resourceType set to nt:file. Change it to "sling/servlet/default" and verify.
    Thanks,
    Sham

  • Seeburger sFTP receiver adapter error: Socket Write Error, EOF Received

    Hello experts,
    We have a sFTP to sFTP scenario for which we are getting below error every time the scenario is executed.
    Error Messages are as follows:
    Put File: Could not connect to remote host, Reason: Unexpected termination; software caused connection abort; socket write error[unknown cause].
    Sometimes below error occurs :
    Put File: Could not connect to remote host, Reason: EOF received from remote side [unknown cause].
    Every time after restart of sFTP adapter on XI box, failed messages are sent successfully to receiver sFTP server.
    There is no error for sender sFTP channel. This error occurs only for the receiver sFTP channel.
    On receiver sFTP side, we are using Public key-private key authentication.
    Can anyone please let me know what could be the cause of connection failure. ?
    Thanks a lot in advance!
    (I searched many threads on SDN but could not find anything relevant to this particular situation, so posting a separate question.)
    Minal

    Thanks Naveen for the reply..
    I missed to mention that we are working on XI3.0 with SP19 and seeburger sFTP is 1.7.4
    Looks like key exchange is working properly as after every restart of adapter all failed messages are processed successfully..
    It is observed that if there is an idle time of 8-10 hours between last data transfer and current data transfer then this error occurs.
    We have increased connection timeout and transmission timeout parameters also for sFTP properties in visual admin.
    Thanks,
    Minal
    Edited by: Minal Vaidya on Oct 5, 2011 8:46 AM

  • Urgent helep: socket write error

              Hi All,
              My application is continuously writing the following error message to the domain
              log of WLS eventhough app is running ok
              javax.servlet.ServletException: Connection aborted by peer: socket write error
                   <<no stack trace available>>
              My major concern is that,it will fill up the heap soon.
              Did anybody run into similar issue?
              Thanks in advance.
              RC
              

    Please do not cross-port.
              RC wrote:
              > Hi All,
              > My application is continuously writing the following error message to the domain
              > log of WLS eventhough app is running ok
              >
              > javax.servlet.ServletException: Connection aborted by peer: socket write error
              > <<no stack trace available>>
              >
              > My major concern is that,it will fill up the heap soon.
              > Did anybody run into similar issue?
              > Thanks in advance.
              >
              > RC
              Rajesh Mirchandani
              Developer Relations Engineer
              BEA Support
              

  • Simple Webserver SocketException: socket write error

    I'm stuck and need some help solving this problem.
    When I try to get the 404 message with the webserver, I get this in the output console:
    "HttpRequest - java.net.SocketException: Connection reset by peer: socket write error"
    I have found the part that makes the problem, but I can't find a solution.
    I hope someone can help me with this!
                try
                    outputStream.writeBytes(entityBody);
    import java.io.*;
    import java.net.*;
    import java.util.*;
    public final class WebServer
        public static void main(String[] args) throws Exception
            //Port number
            int port = 8080;
            // Establish the listen socket.
            ServerSocket webSocket = new ServerSocket(port);
            // Process HTTP service requests in an infinite loop.
            while(true)
                // Listen for a TCP connection request
                Socket tcpSocket = webSocket.accept();
                HttpRequest httpRequest = new HttpRequest(tcpSocket);
                Thread thread = new Thread(httpRequest);
                thread.start();
    import java.io.*;
    import java.net.*;
    import java.util.*;
    public class HttpRequest implements Runnable
        final static String CRLF = "\r\n";
        private Socket socket;
        private String path = "public_html/";
        public HttpRequest(Socket socket)
            this.socket = socket;
        public void run()
            try
                processReguest();
            catch(Exception ex)
                System.err.println(ex);
        private void processReguest() throws Exception
            // Get a reference to the socket's input and output streams.
            InputStreamReader inputReader = new InputStreamReader(socket.getInputStream());
            DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());
            BufferedReader buffReader = new BufferedReader(inputReader);
            String requestLine = buffReader.readLine();
            System.out.println();
            System.out.println(requestLine);
            String headerLine = null;
            while((headerLine = buffReader.readLine()).length() != 0)
                System.out.println(headerLine);
            // Extract the filename from the request line
            StringTokenizer tokens = new StringTokenizer(requestLine);
            tokens.nextToken();
            String fileName = tokens.nextToken();
            //Prepend a "." so that the file request is within the current directory
            fileName = path + "." + fileName;
            //Open the request file
            FileInputStream fileInputStream = null;
            boolean fileExists = true;
            try
                fileInputStream = new FileInputStream(fileName);
            catch(FileNotFoundException ex)
                fileExists = false;
            //Construct the response message.
            String statusLine = null;
            String connection = null;
            String contentLength = null;
            String contentTypeLine = null;
            String entityBody = null;
            String contentType = contentType(fileName);
            if(!requestLine.startsWith("GET") && !requestLine.startsWith("HEAD"))
                statusLine = "HTTP/1.0 405 Method Not Allowed" + CRLF;
                contentLength = "Content-Length: 0" + CRLF;
                connection = "Connection: close" + CRLF;
                contentTypeLine = "Content-type: " + "text/html" + CRLF;
                entityBody = "<HTML><HEAD><TITLE>405 - Method Not Allowed</TITLE></HEAD><BODY>405 - Method Not Allowed</BODY></HTML>";
                fileInputStream = null;
                fileExists = false;
            else if(fileExists && !contentType.equals("application/octet-stream"))
                statusLine = "HTTP/1.0 200 OK" + CRLF;
                contentTypeLine = "Content-type: " + contentType(fileName) + CRLF;
                connection = "Connection: close" + CRLF;
                contentLength = "Content-Length: " + Integer.toString(fileInputStream.available()) + CRLF;
            else if(fileExists && contentType.equals("application/octet-stream"))
                statusLine = "HTTP/1.0 415 Unsupported Media Type" + CRLF;
                contentLength = "Content-Length: 0" + CRLF;
                connection = "Connection: close" + CRLF;
                contentTypeLine = "Content-type: " + "text/html" + CRLF;
                entityBody = "<HTML><HEAD><TITLE>415 - Unsupported Media Type</TITLE></HEAD><BODY>415 - Unsupported Media Type</BODY></HTML>";
                fileInputStream = null;
                fileExists = false;
            else
                statusLine = "HTTP/1.0 404 Bad Request" + CRLF;
                contentLength = "Content-Length: 0" + CRLF;
                connection = "Connection: close" + CRLF;
                contentTypeLine = "Content-type: " + "text/html" + CRLF;
                entityBody = "<HTML><HEAD><TITLE>404 - Not Found</TITLE></HEAD><BODY>404 - Not Found</BODY></HTML>";
            // Send the status line
            outputStream.writeBytes(statusLine);
            // Send the connection status
            outputStream.writeBytes(connection);
            // Send the Content-Length
            outputStream.writeBytes(contentLength);
            // Send the content type line
            outputStream.writeBytes(contentTypeLine);
            //Send a blank line to indicate the end of the header lines.
            outputStream.writeBytes(CRLF);
            // Send the enity body
            if(fileExists)
                //Den här funkar??
                sendBytes(fileInputStream, outputStream);
                fileInputStream.close();
            else
                try
                    outputStream.writeBytes(entityBody);
                catch(SocketException ex)
                    System.out.println(ex);
            socket.close();
            inputReader.close();
            outputStream.close();
            buffReader.close();
        private void sendBytes(FileInputStream fileInputStream, DataOutputStream outputStream) throws IOException
            //Construct a 1k buffer to hold bytes on their way to the socket
            byte[] buffer = new byte[1024];
            int bytes = 0;
            // Copy request file inte socket's output stream
            while((bytes = fileInputStream.read(buffer)) != -1)
                outputStream.write(buffer,0, bytes);
        private String contentType(String fileName)
            if(fileName.endsWith(".htm") || fileName.endsWith(".html"))
                return "text/html";
            else if(fileName.endsWith(".jpg") || fileName.endsWith(".jpeg"))
                return "image/jpeg";
            else if(fileName.endsWith(".gif"))
                return "image/gif";
            else if(fileName.endsWith(".png"))
                return "image/png";
            else if(fileName.endsWith(".txt"))
                return "text/plain";
            return "application/octet-stream";
    }

    You've told the client that the content length is zero bytes so I presume it closes the connection as soon as it finishes receiving headers. It depends what client you're using of course but that seems reasonable behaviour...

  • Socket write error

    Java.net.SocketException; connection reset by peer. socket write error
    Java.SQLException; cannot open anymore tables.
    I am getting this error when i'm using Tomcat 3.3 server. I am using servlet classes and access database.This error comes in 1-2 days and then it shows an sql exception that it cannot open any more tables. I am using an access database thru an ODBC datasource.
    The problem is solved when tomcat is restarted.
    If anybody knows the solution pl.let me know, anita

    Thanks 4 ur response. I am connecting to the database through JDBC which in turn uses an ODBC data source. The connection has been declared as global and is thus supposed to exist till the servlet is not destroyed.
    We r using an access D/B which is inturn accessed through ODBC.
    So it is not restarted or disturbed.
    Pl. help

Maybe you are looking for