As OHLA seems to do not support having a null
MobileFederateServices (see exception bellow). So
there should probably be a test in
net.sf.ohla.rti1516.OHLARTIambassador which throw a
NullPointerException in the client before sending the
request to the RTI.
This is not a big issue as IEEE1516.1-2000 §12.4.1.1
says the MobileFederateServices is required, but
others Java RTI allow to have a null
MobileFederateServices.
2006-11-14 10:45:06,495 INFO [RTI$RTIIoHandler]
[/127.0.0.1:57892] RECEIVED:
net.sf.ohla.rti1516.messages.JoinFederationExecution@1a28362
2006-11-14 10:45:06,495 DEBUG [RocketSimulation] new
federate: -32766
2006-11-14 10:45:06,495 ERROR [RTI$RTIIoHandler]
[/127.0.0.1:57892] EXCEPTION:
java.lang.NullPointerException
at
net.sf.ohla.rti1516.federation.TimeKeeper.<init>(TimeKeeper.java:49)
at
net.sf.ohla.rti1516.federation.FederationExecution.process(FederationExecution.java:1487)
at
net.sf.ohla.rti1516.federation.FederationExecution.process(FederationExecution.java:333)
at
net.sf.ohla.rti1516.RTI.process(RTI.java:208)
at
net.sf.ohla.rti1516.RTI$RTIIoHandler.messageReceived(RTI.java:265)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200
(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
net.sf.ohla.rti1516.filter.RequestResponseFilter.messageReceived(RequestResponseFilter.java:68)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200
(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:97)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200
(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
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:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200
(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
2006-11-14 10:45:06,496 INFO [RTI$RTIIoHandler]
[/127.0.0.1:57892] CLOSE
Logged In: YES
user_id=382427
Originator: NO
Fixed as of version 34 in trunk. Will now throw IllegalArgumentException.