Ok, I have sorted my SVN troubles out (using the Subclipse plugin -- http://subclipse.tigris.org). I've build a 1.0.1 snapshot (rev 454853 at the time) and tested some more.

Here are my findings (all on WinXP SP2, Java 1.5_08):
- v1.0.1 (lib + example SumUp): SumUp server starts up fine; when SumUp client connects messages are sent properly, but answers are not (see enclosed log).
- v1.0.1 (lib): on my own project (based on 0.9.5 SumUp client that connects to a non-Java UDP server) -- can send messages, but doesn't recieve any (like I had with the 0.9.5 lib)

I noticed some changes in the 1.0.x SumUp client. The filters are now added before the connect call (in the 0.9.5 it was done @ sessionCreated) and a specific DatagramConnector typed variable is used instead of the more general IoConnector (don't know why, but it doesn't seen to make a difference for my problem).

The only things I changed from the 1.0.x TCP SumUp example were:
- Client: changed SocketConnector and SocketConnectorConfig to DatagramConnector and DatagramConnectorConfig
- Client: commented out the connector.setWorkerTimeout(1); line
- Client: added the line session.getHandler().sessionOpened(session); right before the session.getCloseFuture().join() line to trigger the AddMessage send loop.
- Server: changed SocketAcceptor and SocketAcceptorConfig to DatagramAcceptor and DatagramAcceptorConfig
- Server: commented out the cfg.setReuseAddress(true); line

I also added some log4j stuff ( BasicConfigurator.configure() ) to see what is going on.

The TCP version works every time; the UDP version does not. Any ideas?

--
Jeroen Brattinga
SumUp server UDP
================

Listening on port 8080
0 [DatagramAcceptor-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  - 
Launching thread for /127.0.0.1:1700
0 [DatagramAcceptor-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  - 
Launching thread for /127.0.0.1:1700
0 [DatagramAcceptor-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  - 
Launching thread for /127.0.0.1:1700
0 [DatagramAcceptor-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  - 
Launching thread for /127.0.0.1:1700
0 [DatagramAcceptor-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  - 
Launching thread for /127.0.0.1:1700
0 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
RECEIVED: 1:ADD(20)
0 [AnonymousIoService-1] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
RECEIVED: 0:ADD(10)
0 [AnonymousIoService-3] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
RECEIVED: 2:ADD(30)
0 [AnonymousIoService-4] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
RECEIVED: 3:ADD(40)
0 [AnonymousIoService-5] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
RECEIVED: 4:ADD(50)
47 [AnonymousIoService-2] ERROR 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
EXCEPTION:
java.lang.NullPointerException
        at 
org.apache.mina.example.sumup.ServerSessionHandler.messageReceived(ServerSessionHandler.java:54)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:96)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:184)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter.processEvent(ThreadPoolFilter.java:257)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter$ProcessEventsRunnable.run(ThreadPoolFilter.java:319)
        at 
org.apache.mina.filter.thread.LeaderFollowersThreadPool$Worker.run(LeaderFollowersThreadPool.java:317)
47 [AnonymousIoService-1] ERROR 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
EXCEPTION:
java.lang.NullPointerException
        at 
org.apache.mina.example.sumup.ServerSessionHandler.messageReceived(ServerSessionHandler.java:54)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:96)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:184)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter.processEvent(ThreadPoolFilter.java:257)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter$ProcessEventsRunnable.run(ThreadPoolFilter.java:319)
        at 
org.apache.mina.filter.thread.LeaderFollowersThreadPool$Worker.run(LeaderFollowersThreadPool.java:317)
47 [AnonymousIoService-3] ERROR 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
EXCEPTION:
java.lang.NullPointerException
        at 
org.apache.mina.example.sumup.ServerSessionHandler.messageReceived(ServerSessionHandler.java:54)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:96)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:184)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter.processEvent(ThreadPoolFilter.java:257)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter$ProcessEventsRunnable.run(ThreadPoolFilter.java:319)
        at 
org.apache.mina.filter.thread.LeaderFollowersThreadPool$Worker.run(LeaderFollowersThreadPool.java:317)
47 [AnonymousIoService-4] ERROR 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
EXCEPTION:
java.lang.NullPointerException
        at 
org.apache.mina.example.sumup.ServerSessionHandler.messageReceived(ServerSessionHandler.java:54)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:96)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:184)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter.processEvent(ThreadPoolFilter.java:257)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter$ProcessEventsRunnable.run(ThreadPoolFilter.java:319)
        at 
org.apache.mina.filter.thread.LeaderFollowersThreadPool$Worker.run(LeaderFollowersThreadPool.java:317)
47 [AnonymousIoService-5] ERROR 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] 
EXCEPTION:
java.lang.NullPointerException
        at 
org.apache.mina.example.sumup.ServerSessionHandler.messageReceived(ServerSessionHandler.java:54)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:96)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
        at 
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:184)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)
        at 
org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)
        at 
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:789)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter.processEvent(ThreadPoolFilter.java:257)
        at 
org.apache.mina.filter.thread.ThreadPoolFilter$ProcessEventsRunnable.run(ThreadPoolFilter.java:319)
        at 
org.apache.mina.filter.thread.LeaderFollowersThreadPool$Worker.run(LeaderFollowersThreadPool.java:317)
47 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] CLOSE
47 [AnonymousIoService-1] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] CLOSE
47 [AnonymousIoService-3] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] CLOSE
47 [AnonymousIoService-4] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] CLOSE
47 [AnonymousIoService-5] INFO 
org.apache.mina.example.sumup.ServerSessionHandler  - [/127.0.0.1:1700] CLOSE
47 [AnonymousIoService-2] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for /127.0.0.1:1700
47 [AnonymousIoService-1] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for /127.0.0.1:1700
47 [AnonymousIoService-3] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for /127.0.0.1:1700
47 [AnonymousIoService-4] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for /127.0.0.1:1700
47 [AnonymousIoService-5] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for /127.0.0.1:1700


SumUp client UDP
================
0 [main] INFO org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] WRITE: 0:ADD(10)
47 [DatagramConnector-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Launching thread for localhost/127.0.0.1:8080
47 [AnonymousIoService-1] INFO 
org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] SENT: 0:ADD(10)
47 [AnonymousIoService-1] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for localhost/127.0.0.1:8080
47 [main] INFO org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] WRITE: 1:ADD(20)
47 [DatagramConnector-0] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Launching thread for localhost/127.0.0.1:8080
47 [main] INFO org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] WRITE: 2:ADD(30)
47 [main] INFO org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] WRITE: 3:ADD(40)
47 [main] INFO org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] WRITE: 4:ADD(50)
47 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] SENT: 1:ADD(20)
47 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] SENT: 2:ADD(30)
47 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] SENT: 3:ADD(40)
47 [AnonymousIoService-2] INFO 
org.apache.mina.example.sumup.ClientSessionHandler  - 
[localhost/127.0.0.1:8080] SENT: 4:ADD(50)
47 [AnonymousIoService-2] DEBUG org.apache.mina.filter.thread.ThreadPoolFilter  
- Exiting since queue is empty for localhost/127.0.0.1:8080

Reply via email to