Basically, it depends on what way the programmers have internally designed the client-server communication. In an applet it is possible to make the applet-server communication using HTTP - GET, POST in which case you can happily go about using JAVA Applet record/replay protocol of loadrunner.
But if the apple-server communication has been designed to directly send and receive messages through the TCP SOCKET then your jinxed! :P
I wouldn't say WinSock protocol is the best solution for the aforementioned issue, because I found a better alternative. I had worked on similar such projects and my solution was to reverse engineer the applet to create my own Java client(java Vuser) which does the same thing of what the applet does except that it works on my terms.
How did I do that?
1. Use Cavaj or any free decompiler. Since java runs on a virtual machine, the intermediate code can be easisly decompiled using such tools.
2. Download your applet and uncompress the jar file and dump those class files into a folder.
3. Get support from the Development team for identifying the Main Class and also for you to get some insight on how classes are inherited.
4. Decompile all the class files.
5. Identify a simple transaction(basic ones such as Login/logout) and recreate them for you Java Vuser script by copy-pasting the code from the decomplied Java class file.
6. In most cases when messages are being passed through socket the developers would have used methods such as getinputstream() -- open up you java console from the browser when you're working on the applet to view those messages. This will help you get the message formatting technique employed by the developers.
Once you have completed Step 5 and 6 you will be in a comfortable position to do the rest.
Regards,
Chaitanya M Bhatt