With the growth of internet, the requirement for the communication and message exchanges between programs becomes more and more important. The Message-Oriented Middleware (MOM), such as Java Message Service (JMS), could not only greatly reduce the technical learning curve for programmers but also have some amazing characteristics: such as reliable, secured, and event-driven. In the traditional client-server architecture, not only the client side program has to maintain the resource for connections and memory management, but also the server side has to send out several copies of duplicated messages per amount of connected clients. It not only wastes the system resource but also the network bandwidth. A system this paper developed is Fast Java Messaging 2 (FJM2), it's a enhancement version from Fast Java Messaging (FJM). It creates a whole new JMS provider which is distributed, high performance, reliable, and easy to use and deploy. While compared with FJM, FJM2 adapts a more efficient communication protocol - Negative-acknowledgment (NACK)-Oriented Reliable Multicast (NORM), and does not adapt topic addressing. Moreover, FJM2 has the ability to work across WAN environment to extend the system coverage, and could be adapted for more different application scopes. It would benefit those who want to create a MOM system based on Java and multicast protocol.