{"id":30320,"date":"2015-12-15T15:00:26","date_gmt":"2015-12-15T13:00:26","guid":{"rendered":"http:\/\/examples.javacodegeeks.com\/?p=30320"},"modified":"2019-03-04T10:33:44","modified_gmt":"2019-03-04T08:33:44","slug":"jms-textmessage-example","status":"publish","type":"post","link":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/","title":{"rendered":"JMS TextMessage Example"},"content":{"rendered":"<p>JMS defines several types of messages that can be posted by an application. They all extend the <code>Message<\/code> interface.<\/p>\n<p>This type carries a java.lang.String as its payload. It is useful for exchanging&nbsp;simple text messages and also for more complex character data, such as XML documents. In this article, we will look into examples of simple as well as XML based <code>TextMessage<\/code>.<\/p>\n<h2>1. Dependencies<\/h2>\n<p>In order to send and receive JMS messages to and from a JMS message broker, we need to include the message service library. In this example we are using activeMq so our pom.xml will have dependencies related to spring as well as activeMQ.<\/p>\n<p><span style=\"text-decoration: underline\"><em>pom.xml:<\/em><\/span><\/p>\n<pre class=\"brush:xml\">&lt;project xmlns=\"http:\/\/maven.apache.org\/POM\/4.0.0\" xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\"\n\txsi:schemaLocation=\"http:\/\/maven.apache.org\/POM\/4.0.0 http:\/\/maven.apache.org\/xsd\/maven-4.0.0.xsd\"&gt;\n\t&lt;modelVersion&gt;4.0.0&lt;\/modelVersion&gt;\n\t&lt;groupId&gt;com.javacodegeeks.jms&lt;\/groupId&gt;\n\t&lt;artifactId&gt;springJmsQueue&lt;\/artifactId&gt;\n\t&lt;version&gt;0.0.1-SNAPSHOT&lt;\/version&gt;\n\t&lt;dependencies&gt;\n\t\t&lt;dependency&gt;\n\t\t\t&lt;groupId&gt;org.apache.activemq&lt;\/groupId&gt;\n\t\t\t&lt;artifactId&gt;activemq-all&lt;\/artifactId&gt;\n\t\t\t&lt;version&gt;5.12.0&lt;\/version&gt;\n\t\t&lt;\/dependency&gt;\n\t&lt;\/dependencies&gt;\n\t\n&lt;\/project&gt;\n<\/pre>\n<\/p>\n<h2>2. TextMessage API<\/h2>\n<p>A <code>TextMessage<\/code> is used to send a message containing a <code>java.lang.String<\/code>. One can either send a simple text or XML content.<\/p>\n<p>A <code>TextMessage<\/code> contains two methods <code>setText(String)<\/code> and <code>getText()<\/code>.<\/p>\n<p><span style=\"text-decoration: underline\"><em>TextMessage:<\/em><\/span><\/p>\n<pre class=\"brush:java\">public interface TextMessage extends Message {\n    void setText(String string) throws JMSException;\n\n    String getText() throws JMSException;\n}\n<\/pre>\n<h2>3. Creating TextMessage<\/h2>\n<p>The session object acts as a factory for creating messages. In order to create a <code>TextMessage<\/code> object, we need to call <code>createTextMessage()<\/code> method on <code>Session<\/code> object and pass the text message we want to send.&nbsp;One can also call <code>createTextMessage()<\/code> first and then later set its text message.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Session:<\/em><\/span><\/p>\n<pre class=\"brush:java\">public interface Session extends Runnable {\n...\n    TextMessage createTextMessage() throws JMSException;\n\n    TextMessage createTextMessage(String text) throws JMSException;\n...\n}\n<\/pre>\n<h2>4. Sending and Receiving TextMessage<\/h2>\n<p>We know how to create a text message. Let&#8217;s now send it to a destination and receive it.<\/p>\n<p>Start the broker first.<\/p>\n<p><span style=\"text-decoration: underline\"><em>BrokerLauncher:<\/em><\/span><\/p>\n<pre class=\"brush:java\">package com.javacodegeeks.jms;\n\nimport java.net.URI;\nimport java.net.URISyntaxException;\n\nimport org.apache.activemq.broker.BrokerFactory;\nimport org.apache.activemq.broker.BrokerService;\n\npublic class BrokerLauncher {\n\tpublic static void main(String[] args) throws URISyntaxException, Exception {\n\t\tBrokerService broker = BrokerFactory.createBroker(new URI(\n\t\t\t\t\"broker:(tcp:\/\/localhost:61616)\"));\n\t\tbroker.start();\t\t\n\t}\n}\n<\/pre>\n<p>We will call <code>createTextMessage(payload)<\/code> on <code>Session<\/code> object to create the text message.<\/p>\n<pre class=\"brush:java\">Message msg = session.createTextMessage(payload);\n<\/pre>\n<p>Next, we will send the text message.<\/p>\n<pre class=\"brush:java\">producer.send(msg);\n<\/pre>\n<p><span style=\"text-decoration: underline\"><em>JmsTextMessageProducer:<\/em><\/span><\/p>\n<pre class=\"brush:java\">package com.javacodegeeks.jms;\n\nimport java.net.URISyntaxException;\n\nimport javax.jms.Connection;\nimport javax.jms.ConnectionFactory;\nimport javax.jms.Message;\nimport javax.jms.MessageProducer;\nimport javax.jms.Queue;\nimport javax.jms.Session;\n\nimport org.apache.activemq.ActiveMQConnectionFactory;\n\npublic class JmsTextMessageProducer {\n\tpublic static void main(String[] args) throws URISyntaxException, Exception {\n\t\tConnection connection = null;\n\t\ttry {\n\t\t\t\/\/ Producer\n\t\t\tConnectionFactory connectionFactory = new ActiveMQConnectionFactory(\n\t\t\t\t\t\"tcp:\/\/localhost:61616\");\n\t\t\tconnection = connectionFactory.createConnection();\n\t\t\tSession session = connection.createSession(false,\n\t\t\t\t\tSession.AUTO_ACKNOWLEDGE);\n\t\t\tQueue queue = session.createQueue(\"customerQueue\");\n\t\t\tMessageProducer producer = session.createProducer(queue);\n\t\t\tString payload = \"Hi, I am text message\";\n\t\t\tMessage msg = session.createTextMessage(payload);\n\t\t\tSystem.out.println(\"Sending text '\" + payload + \"'\");\n\t\t\tproducer.send(msg);\n\t\t\tsession.close();\n\t\t} finally {\n\t\t\tif (connection != null) {\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t}\n\t}\n}\n<\/pre>\n<p><span style=\"text-decoration: underline\"><em>Output:<\/em><\/span><div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<pre class=\"brush:bash\">Sending text 'Hi, I am text message'\n<\/pre>\n<p>Once the message is received we type cast it to <code>TextMessage<\/code>, since this is the message type we are expecting from the client. In order to access the payload contained by <code>TextMessage<\/code> object, the consumer calls the <code>getText()<\/code> method.<\/p>\n<p><span style=\"text-decoration: underline\"><em>JmsTextMessageConsumer:<\/em><\/span><\/p>\n<pre class=\"brush:java\">package com.javacodegeeks.jms;\n\nimport java.net.URISyntaxException;\n\nimport javax.jms.Connection;\nimport javax.jms.ConnectionFactory;\nimport javax.jms.MessageConsumer;\nimport javax.jms.Queue;\nimport javax.jms.Session;\nimport javax.jms.TextMessage;\n\nimport org.apache.activemq.ActiveMQConnectionFactory;\n\npublic class JmsTextMessageConsumer {\n\tpublic static void main(String[] args) throws URISyntaxException, Exception {\n\t\tConnection connection = null;\n\t\tConnectionFactory connectionFactory = new ActiveMQConnectionFactory(\n\t\t\t\t\"tcp:\/\/localhost:61616\");\n\t\tconnection = connectionFactory.createConnection();\n\t\tSession session = connection.createSession(false,\n\t\t\t\tSession.AUTO_ACKNOWLEDGE);\n\t\ttry {\n\t\t\tQueue queue = session.createQueue(\"customerQueue\");\n\n\t\t\t\/\/ Consumer\n\t\t\tMessageConsumer consumer = session.createConsumer(queue);\n\t\t\tconnection.start();\n\t\t\tTextMessage textMsg = (TextMessage) consumer.receive();\n\t\t\tSystem.out.println(textMsg);\n\t\t\tSystem.out.println(\"Received: \" + textMsg.getText());\t\t\n\t\t} finally {\n\t\t\tif (session != null) {\n\t\t\t\tsession.close();\n\t\t\t}\n\t\t\tif (connection != null) {\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t}\n\t}\n}\n<\/pre>\n<p>We print here the <code>TextMessage<\/code> object and the contained payload.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Output:<\/em><\/span><\/p>\n<pre class=\"brush:bash\">ActiveMQTextMessage {commandId = 5, responseRequired = true, messageId = ID:INMAA1-L1005-64809-1450096231882-1:1:1:1:1, originalDestination = null, originalTransactionId = null, producerId = ID:INMAA1-L1005-64809-1450096231882-1:1:1:1, destination = queue:\/\/customerQueue, transactionId = null, expiration = 0, timestamp = 1450096232122, arrival = 0, brokerInTime = 1450096232124, brokerOutTime = 1450096273254, correlationId = null, replyTo = null, persistent = true, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@6e3c1e69, marshalledProperties = null, dataStructure = null, redeliveryCounter = 0, size = 0, properties = null, readOnlyProperties = true, readOnlyBody = true, droppable = false, jmsXGroupFirstForConsumer = false, text = Hi, I am text message}\nReceived: Hi, I am text message\n<\/pre>\n<h2>5. Overloaded Method of TextMessage Creation<\/h2>\n<p>One can also call <code>createTextMessage()<\/code> first and then later set its text message.<\/p>\n<p><span style=\"text-decoration: underline\"><em>JmsTextMessageProducer2:<\/em><\/span><\/p>\n<pre class=\"brush:java\">package com.javacodegeeks.jms;\n\nimport java.net.URISyntaxException;\n\nimport javax.jms.Connection;\nimport javax.jms.ConnectionFactory;\nimport javax.jms.MessageProducer;\nimport javax.jms.Queue;\nimport javax.jms.Session;\nimport javax.jms.TextMessage;\n\nimport org.apache.activemq.ActiveMQConnectionFactory;\n\npublic class JmsTextMessageProducer2 {\n\tpublic static void main(String[] args) throws URISyntaxException, Exception {\n\t\tConnection connection = null;\n\t\ttry {\n\t\t\t\/\/ Producer\n\t\t\tConnectionFactory connectionFactory = new ActiveMQConnectionFactory(\n\t\t\t\t\t\"tcp:\/\/localhost:61616\");\n\t\t\tconnection = connectionFactory.createConnection();\n\t\t\tSession session = connection.createSession(false,\n\t\t\t\t\tSession.AUTO_ACKNOWLEDGE);\n\t\t\tQueue queue = session.createQueue(\"customerQueue\");\n\t\t\tMessageProducer producer = session.createProducer(queue);\n\t\t\tString payload = \"Hi, I am text message\";\n\t\t\tTextMessage textMsg = session.createTextMessage();\n\t\t\ttextMsg.setText(payload);\n\t\t\tSystem.out.println(\"Sending text '\" + payload + \"'\");\n\t\t\tproducer.send(textMsg);\n\t\t\tsession.close();\n\t\t} finally {\n\t\t\tif (connection != null) {\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t}\n\t}\n}\n<\/pre>\n<h2>6. Send and Receiving XML<\/h2>\n<p><code>TextMessage<\/code> message type can also be used to support XML. Since XML is a standard format, it can be safely used as JMS payload to communicate between sub-systems. In this example, we will be creating a JMS <code>TextMessage<\/code> from an XML Document object and vice versa.[ulp id=&#8217;meNHaG2axN7AsWAw&#8217;]<\/p>\n<p>We want to send employee XML from one system to another. We read employee XML file and create a DOM Document object from it. If one wants the DOM document object can be manipulated further. Once we have the DOM document object ready, we will use <code>getXmlAsDOMDocument()<\/code> method to convert DOM document to a <code>String<\/code> object.<\/p>\n<p>The string returned from this call is then used to create text message which we will use it to send it to the client.<br \/>\nWhen a client receives the <code>TextMeessage<\/code>, the XML document is retrieved. This is then converted to a DOM Document object<\/p>\n<p><span style=\"text-decoration: underline\"><em>emp.xml:<\/em><\/span><\/p>\n<pre class=\"brush:xml\">&lt;?xml version=\"1.0\"?&gt;\n&lt;employees&gt;\n\t&lt;employee id=\"1\"&gt;\n\t\t&lt;name&gt;John&lt;\/name&gt;\n\t\t&lt;age&gt;41&lt;\/age&gt;\n\t&lt;\/employee&gt;\n\t&lt;employee id=\"2\"&gt;\n\t\t&lt;name&gt;Raghu&lt;\/name&gt;\n\t\t&lt;age&gt;21&lt;\/age&gt;\n\t&lt;\/employee&gt;\t\n&lt;\/employees&gt;\n<\/pre>\n<p><span style=\"text-decoration: underline\"><em>JmsXmlAsTextMessage:<\/em><\/span><\/p>\n<pre class=\"brush:java\">package com.javacodegeeks.jms;\n\nimport java.io.StringReader;\nimport java.io.StringWriter;\nimport java.net.URISyntaxException;\n\nimport javax.jms.Connection;\nimport javax.jms.ConnectionFactory;\nimport javax.jms.Message;\nimport javax.jms.MessageConsumer;\nimport javax.jms.MessageProducer;\nimport javax.jms.Queue;\nimport javax.jms.Session;\nimport javax.jms.TextMessage;\nimport javax.xml.parsers.DocumentBuilder;\nimport javax.xml.parsers.DocumentBuilderFactory;\nimport javax.xml.transform.OutputKeys;\nimport javax.xml.transform.Transformer;\nimport javax.xml.transform.TransformerFactory;\nimport javax.xml.transform.dom.DOMSource;\nimport javax.xml.transform.stream.StreamResult;\n\nimport org.apache.activemq.ActiveMQConnectionFactory;\nimport org.w3c.dom.Document;\nimport org.w3c.dom.Node;\nimport org.w3c.dom.NodeList;\nimport org.xml.sax.InputSource;\n\npublic class JmsXmlAsTextMessage {\n\tpublic static void main(String[] args) throws URISyntaxException, Exception {\n\t\tConnection connection = null;\n\t\ttry {\n\t\t\t\/\/ Producer\n\t\t\tConnectionFactory connectionFactory = new ActiveMQConnectionFactory(\n\t\t\t\t\t\"tcp:\/\/localhost:61616\");\n\t\t\tconnection = connectionFactory.createConnection();\n\t\t\tSession session = connection.createSession(false,\n\t\t\t\t\tSession.AUTO_ACKNOWLEDGE);\n\t\t\tQueue queue = session.createQueue(\"customerQueue\");\n\t\t\tMessageProducer producer = session.createProducer(queue);\n\t\t\tDocument doc = parseXml();\n\t\t\tString xmlPayload = getXmlAsString(doc);\n\t\t\tMessage msg = session.createTextMessage(xmlPayload);\n\t\t\tSystem.out.println(\"Sending text '\" + xmlPayload + \"'\");\n\t\t\tproducer.send(msg);\n\n\t\t\tMessageConsumer consumer = session.createConsumer(queue);\n\t\t\tconnection.start();\n\t\t\tTextMessage textMsg = (TextMessage) consumer.receive();\n\t\t\tString xml = textMsg.getText();\n\t\t\tSystem.out.println(\"Received: '\" + xml + \"'\");\n\t\t\tDocument receivedDoc = getXmlAsDOMDocument(xml);\n\t\t\tNode employeesNode = receivedDoc.getFirstChild();\n\t\t\tNodeList nodeList = employeesNode.getChildNodes();\n\t\t\tint empCount = 0;\n\t\t\tfor (int i = 0; i &lt; nodeList.getLength(); i++) {\n\t\t\t\tNode childNode = nodeList.item(i);\n\t\t\t\tif (childNode.getNodeName().equals(\"employee\")) {\n\t\t\t\t\tempCount++;\n\t\t\t\t}\n\t\t\t}\n\t\t\tSystem.out.println(\"emp count: \" + empCount);\n\t\t\tsession.close();\n\t\t} finally {\n\t\t\tif (connection != null) {\n\t\t\t\tconnection.close();\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate static Document parseXml() throws Exception {\n\t\tDocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory\n\t\t\t\t.newInstance();\n\t\tDocumentBuilder documentBuilder = documentBuilderFactory\n\t\t\t\t.newDocumentBuilder();\n\t\treturn documentBuilder.parse(JmsXmlAsTextMessage.class\n\t\t\t\t.getResourceAsStream(\"emp.xml\"));\n\t}\n\n\tpublic static String getXmlAsString(Document document) throws Exception {\n\t\tTransformerFactory tf = TransformerFactory.newInstance();\n\t\tTransformer transformer = tf.newTransformer();\n\t\ttransformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, \"yes\");\n\t\tStringWriter writer = new StringWriter();\n\t\ttransformer\n\t\t\t\t.transform(new DOMSource(document), new StreamResult(writer));\n\t\tString output = writer.getBuffer().toString().replaceAll(\"\\n|\\r\", \"\");\n\t\treturn output;\n\t}\n\n\tpublic static Document getXmlAsDOMDocument(String xmlString) throws Exception {\n\t\tDocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory\n\t\t\t\t.newInstance();\n\t\tDocumentBuilder documentBuilder = documentBuilderFactory\n\t\t\t\t.newDocumentBuilder();\n\t\treturn documentBuilder.parse(\n                new InputSource(new StringReader(xmlString)));\n\t}\n}\n<\/pre>\n<p><span style=\"text-decoration: underline\"><em>Output:<\/em><\/span><\/p>\n<pre class=\"brush:bash\">Sending text '\t\t\tJohn\t\t41\t\t\t\tRaghu\t\t21\t\t'\nReceived: '\t\t\tJohn\t\t41\t\t\t\tRaghu\t\t21\t\t'\nDocument: 1\nemp count: 2\n<\/pre>\n<h2>7. Download the eclipse project<\/h2>\n<p>This was an example about JMS TextMessage.<\/p>\n<div class=\"download\"><strong>Download<\/strong><br \/>\nYou can download the full source code of this example here: <a href=\"http:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2015\/12\/jmsTextMessageExample.zip\"><strong>jmsTextMessageExample.zip<\/strong><\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as its payload. It is useful for exchanging&nbsp;simple text messages and also for more complex character data, such as XML documents. In this article, we will look into examples of simple &hellip;<\/p>\n","protected":false},"author":38,"featured_media":1240,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-30320","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jms"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>JMS TextMessage Example - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JMS TextMessage Example - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as\" \/>\n<meta property=\"og:url\" content=\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\" \/>\n<meta property=\"og:site_name\" content=\"Examples Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2015-12-15T13:00:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-03-04T08:33:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Ram Mokkapaty\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ram Mokkapaty\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\"},\"author\":{\"name\":\"Ram Mokkapaty\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/7b1823eb5bd673bd375f8bee33b70cd8\"},\"headline\":\"JMS TextMessage Example\",\"datePublished\":\"2015-12-15T13:00:26+00:00\",\"dateModified\":\"2019-03-04T08:33:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\"},\"wordCount\":479,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg\",\"articleSection\":[\"jms\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\",\"name\":\"JMS TextMessage Example - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg\",\"datePublished\":\"2015-12-15T13:00:26+00:00\",\"dateModified\":\"2019-03-04T08:33:44+00:00\",\"description\":\"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as\",\"breadcrumb\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/examples.javacodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java Development\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"jms\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/jms\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"JMS TextMessage Example\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Examples and Code Snippets\",\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/javacodegeeks\",\"https:\/\/x.com\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/7b1823eb5bd673bd375f8bee33b70cd8\",\"name\":\"Ram Mokkapaty\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2014\/12\/Ram-Mokkapaty-96x96.jpg\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2014\/12\/Ram-Mokkapaty-96x96.jpg\",\"caption\":\"Ram Mokkapaty\"},\"description\":\"Ram holds a master's degree in Machine Design from IT B.H.U. His expertise lies in test driven development and re-factoring. He is passionate about open source technologies and actively blogs on various java and open-source technologies like spring. He works as a principal Engineer in the logistics domain.\",\"sameAs\":[\"http:\/\/www.javacodegeeks.com\/\",\"https:\/\/in.linkedin.com\/pub\/ram-satish-mokkapaty\/18\/123\/52b\"],\"url\":\"https:\/\/examples.javacodegeeks.com\/author\/ram-mokkapaty\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JMS TextMessage Example - Java Code Geeks","description":"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/","og_locale":"en_US","og_type":"article","og_title":"JMS TextMessage Example - Java Code Geeks","og_description":"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as","og_url":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/","og_site_name":"Examples Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2015-12-15T13:00:26+00:00","article_modified_time":"2019-03-04T08:33:44+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg","type":"image\/jpeg"}],"author":"Ram Mokkapaty","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Ram Mokkapaty","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#article","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/"},"author":{"name":"Ram Mokkapaty","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/7b1823eb5bd673bd375f8bee33b70cd8"},"headline":"JMS TextMessage Example","datePublished":"2015-12-15T13:00:26+00:00","dateModified":"2019-03-04T08:33:44+00:00","mainEntityOfPage":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/"},"wordCount":479,"commentCount":0,"publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage"},"thumbnailUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg","articleSection":["jms"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/","url":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/","name":"JMS TextMessage Example - Java Code Geeks","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage"},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage"},"thumbnailUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg","datePublished":"2015-12-15T13:00:26+00:00","dateModified":"2019-03-04T08:33:44+00:00","description":"JMS defines several types of messages that can be posted by an application. They all extend the Message interface. This type carries a java.lang.String as","breadcrumb":{"@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#primaryimage","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/enterprise-java-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/examples.javacodegeeks.com\/java-development\/enterprise-java\/jms\/jms-textmessage-example\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/examples.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java Development","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/"},{"@type":"ListItem","position":4,"name":"jms","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/jms\/"},{"@type":"ListItem","position":5,"name":"JMS TextMessage Example"}]},{"@type":"WebSite","@id":"https:\/\/examples.javacodegeeks.com\/#website","url":"https:\/\/examples.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Examples and Code Snippets","publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/examples.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/examples.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/7b1823eb5bd673bd375f8bee33b70cd8","name":"Ram Mokkapaty","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2014\/12\/Ram-Mokkapaty-96x96.jpg","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2014\/12\/Ram-Mokkapaty-96x96.jpg","caption":"Ram Mokkapaty"},"description":"Ram holds a master's degree in Machine Design from IT B.H.U. His expertise lies in test driven development and re-factoring. He is passionate about open source technologies and actively blogs on various java and open-source technologies like spring. He works as a principal Engineer in the logistics domain.","sameAs":["http:\/\/www.javacodegeeks.com\/","https:\/\/in.linkedin.com\/pub\/ram-satish-mokkapaty\/18\/123\/52b"],"url":"https:\/\/examples.javacodegeeks.com\/author\/ram-mokkapaty\/"}]}},"_links":{"self":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/30320","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/users\/38"}],"replies":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=30320"}],"version-history":[{"count":0,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/30320\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/media\/1240"}],"wp:attachment":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=30320"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=30320"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=30320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}