0

我正在使用JxtaServerSocket(接收方)和JxtaSocket(发送方)通过 LAN 传输文件。起初,我发送的文件名比它的大小。之后,我等待偏移量开始从中发送文件。如果我在本地(在一台计算机上)启动程序的两个部分,它工作正常,但在不同的计算机的情况下它不起作用:

05.04.2011 13:59:03 net.jxta.logging.Logging logCheckedWarning  
WARNING: Line 557 net.jxta.socket.JxtaServerSocket.pipeMsgEvent()
backlog queue full, connect request dropped  
05.04.2011 13:59:03 net.jxta.logging.Logging logCheckedInfo
INFO: Line 115 net.jxta.impl.pipe.InputPipeImpl.<init>()
Creating InputPipe for urn:jxta:uuid-C5D686304E5A4916A943F1F4D0FD649892EAC01ED6644C4DA82ADA0A22F4C7B004 of type JxtaUnicast with listener  
05.04.2011 13:59:03 net.jxta.logging.Logging logCheckedInfo  
INFO: Line 356 net.jxta.socket.JxtaSocket.<init>()
New socket : net.jxta.socket.JxtaSocket@10175206[uuid-C5D686304E5A4916A943F1F4D0FD64988A0B5A3B55C14246824C9A3325E18D2204/uuid-C5D686304E5A4916A943F1F4D0FD649892EAC01ED6644C4DA82ADA0A22F4C7B004] OPEN : i  R  B  C   
05.04.2011 13:59:03 org.mopsproject.core.net.transfer.FileReceiver run  
INFO: New socket connection accepted  
05.04.2011 13:59:03 org.mosprpoject.core.net.transfer.FileReceiver.ConnectionHandler ConnectionHandler(JxtaSocket socket)  
INFO: Method started.  
05.04.2011 13:59:03 org.mopsproject.core.net.transfer.FileReceiver run  
INFO: Waiting for connections  
05.04.2011 13:59:03 org.mopsproject.core.net.transfer.FileReceiver getTargetFile  
INFO: filename : 550e8400-e29b-41d4-a716-446655441234.xml  
05.04.2011 13:59:03 net.jxta.logging.Logging logCheckedInfo  
INFO: Line 1137 net.jxta.impl.util.pipe.reliable.ReliableOutputStream$Retransmitter.<init>()   
STARTED Reliable Retransmitter, RTO = 60000  
05.04.2011 13:59:04 org.mosprpoject.core.net.transfer.FileReceiver.ConnectionHandler sendAndReceiveData(JxtaSocket socket)  
SEVERE: Read timeout reached  
       java.net.SocketTimeoutException: Read timeout reached
    at net.jxta.impl.util.pipe.reliable.ReliableInputStream.dequeueMessage(ReliableInputStream.java:569)
    at net.jxta.impl.util.pipe.reliable.ReliableInputStream.local_read(ReliableInputStream.java:702)
    at   net.jxta.impl.util.pipe.reliable.ReliableInputStream.read(ReliableInputStream.java:309)
    at   java.io.DataInputStream.readFully(Unknown Source)
    at java.io.DataInputStream.readLong(Unknown Source)
    at org.mopsproject.core.net.transfer.FileReceiver$ConnectionHandler.sendAndReceiveData(FileReceiver.java:310)
    at org.mopsproject.core.net.transfer.FileReceiver$ConnectionHandler.run(FileReceiver.java:409)
    at java.lang.Thread.run(Unknown Source)

有一件有趣的事情是接收者得到文件名,但没有别的。我想知道发生这种奇怪事情的原因是什么?另一方面,我想这可能是 JXTA 的错。

4

1 回答 1

0

我在 JXSE/JXTA 电子邮件列表上与 Eugene 进行了讨论。他的一个堆栈跟踪似乎表明他在需要 TCP/HTTP 连接的场景中使用了 ADHOC 配置(仅使用多播)。我建议改用 EDGE / RDV 配置。从那以后我没有收到任何反馈。我假设这解决了他的问题......

于 2011-05-11T14:41:32.670 回答