This paper presents a prototype of a distributed training simulator for a surface-to-air missile system. Since the system requirement enforces us to choose an open standard platform, and we think that Java has matured enough to offer acceptable performance and reliability, we decide to implement it by Java. Basically, this training simulator is a distributed interactive application, and lots of messages are exchanged within it. For the performance reason, we use an IP-multicast-based Java message service (JMS) implementation as the communication infrastructure for delivering time-critical events. In this paper, we present how to exploit the capability of the JMS publish/subscribe paradigm to implement this training simulator. Besides, we also perform a set of experiments to test and verify whether the training simulator can meet the system requirement. We think the experience of this paper is a good case study of using Java and message-oriented middleware to build message-intensive distributed systems.