Error marshalling arguments Exception when I pass object with large number of strings
1 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Ramakrishna_P
Posted On:   Thursday, March 9, 2006 03:29 AM

I am new to RMI. Please find below exception I am getting: I have a class which implements Serializable which has 6 members,of which "value" member stores user entered value. I pass an array of objects of this class to server through RMI. Usually array lenght will be 4 or 5.When "value" length of each object in Param array is small, it is working perfectly fine. But when "value" of any of Param object has around 2000+ strings, each around 15 in length, I am getting the below exception: java.rmi.MarshalException: error marshalling arguments; nested exception is: java.net.SocketException: Software caused connection abort: socket write error at sun.rmi.server.UnicastRef.invoke(Unica   More>>

I am new to RMI. Please find below exception I am getting:


I have a class which implements Serializable which has 6 members,of which "value" member stores user entered value. I pass an array of objects of this class to server through RMI. Usually array lenght will be 4 or 5.When "value" length of each object in Param array is small, it is working perfectly fine. But when "value" of any of Param object has around 2000+ strings, each around 15 in length, I am getting the below exception:



java.rmi.MarshalException: error marshalling arguments; nested exception is:
java.net.SocketException: Software caused connection abort: socket write error
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:129)
at com.test.rmi.Server_Stub.launch(Unknown Source)
......
Caused by: java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at java.io.BufferedOutputStream.write(BufferedOutputStream.java:106)
at java.io.ObjectOutputStream$BlockDataOutputStream.drain(ObjectOutputStream.java:1639)
at java.io.ObjectOutputStream$BlockDataOutputStream.writeByte(ObjectOutputStream.java:1677)
at java.io.ObjectOutputStream.writeFatalException(ObjectOutputStream.java:1354)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:281)
at sun.rmi.server.UnicastRef.marshalValue(UnicastRef.java:265)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:124)
... 31 more



I want to know if there is any limit on lenght of object that can be passed over RMI. If not, please let me know what could be causing the above problem and solution for the same.

   <<Less

Re: Error marshalling arguments Exception when I pass object with large number of strings

Posted By:   Edward_Harned  
Posted On:   Thursday, March 9, 2006 08:58 AM

About | Sitemap | Contact