Make JMS protocol builder so that mandatory parameters cannot be omitted, close #1577
Add JMS compile test simulation