This week's book giveaway is in the Kotlin forum.
We're giving away four copies of Kotlin in Action and have Dmitry Jemerov & Svetlana Isakova on-line!
See this thread for details.
Win a copy of Kotlin in Action this week in the Kotlin forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

UTFDataFormatException  RSS feed

mupparaju srinivasa rao
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

There are two applications.The communication between the two application is through socket.
The code that is writing on the socket is as follows:

public boolean sendAlarmWithSize(int size_, String alarm_) throws Exception
return true;
After writing on the socket i put the print statement in writeShort method of API.It is printing the size_ correct.

At the receiving end for reading from the socket the following code is used:

private Payload readMessages(InputStream in)
throws IOException, java.text.ParseException, InvalidMessageFormat {
PropertyList prop = new PropertyList();
String propertyStr, contentType = null, action = null;
Object obj;
DataInputStream dataStream = new DataInputStream(in);
int numAlarms = dataStream.readShort();
CircuitMessage[] circuitAlarms = new CircuitMessage[numAlarms];
for (int i = 0; i < numAlarms; i++) {
propertyStr = dataStream.readUTF();
if (Logger.DEBUG && myDebug != null) {
myDebug.out(5,"Message Received - " + propertyStr);
obj = prop.objectFrom(propertyStr);
if (obj instanceof java.util.Hashtable) {
java.util.Hashtable hash = (java.util.Hashtable)obj;
contentType = (String) hash.get("<content-type>");
action = (String) hash.get("<action-type>");
obj = mssgFactory.digest(hash);
if (obj instanceof CircuitMessage) {
circuitAlarms[i] = (CircuitMessage) obj;
} else {
// skip this message because I don't recognize it.
Payload payload = new Payload();
payload.payload = circuitAlarms;
payload.contentType = contentType;
payload.action = action;
return payload;

In the above code after reading from the stream using readShort() the value is different than the one we wrote on the stream.At the same time readUTF() is throwing UTFDataformat exception. I hope some one can help me .

Thanks in advance,

Joe Ess
Posts: 9428
Linux Mac OS X Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think the problem is the same as it was six months ago. There is something fundamentally wrong with this code (pseudocode follows):
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!