TOMCAT+ACTIVEMQ+AJAX

当 activemq-web-console-5.5.0 可以运行后,就开始试着添加自己的ajax的activemq的文件到客户端了。
首先是添加activemq demo中的js文件夹的所有文件到 activemq-web-console-5.5.0中的js文件夹中,然后将最简单的一个ajax的客户端文件添加到activemq-web-console-5.5.0 的主页。再然后是编辑WEB-INF中的web.xml注册Ajax的servlet,最后是修改tomcat的conf中的context.xml文件注册connectionfactory,queue和topic。

web.xml添加或者修改的是

<servlet>
<servlet-name>AjaxServlet</servlet-name>
<servlet-class>org.apache.activemq.web.AjaxServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AjaxServlet</servlet-name>
<url-pattern>/amq/*</url-pattern>
</servlet-mapping>


context.xml添加的是

<Resource name="jms/ConnectionFactory" auth="Container" type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS Connection Factory"
factory="org.apache.activemq.jndi.JNDIReferenceFactory" brokerURL="vm://localhost" brokerName="LocalActiveMQBroker"/>

<Resource name="jms/myTopic" auth="Container" type="org.apache.activemq.command.ActiveMQTopic" description="my Topic"
factory="org.apache.activemq.jndi.JNDIReferenceFactory" physicalName="MY.NAME"/>

<Resource name="jms/myQueue" auth="Container" type="org.apache.activemq.command.ActiveMQQueue" description="my Queue"
factory="org.apache.activemq.jndi.JNDIReferenceFactory" physicalName="MY.NAME"/>



最简单的AJax使用方法是 index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Ajax Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/amq_jquery_adapter.js"></script>
<script type="text/javascript" src="js/amq.js"></script>

<script type="text/javascript">

var amq = org.activemq.Amq;
amq.init({ uri:'amq', logging: true,timeout: 20});
var des = "queue://MY.NAME";

var myHandler =
{
rcvMessage: function(message)
{
alert("received from handler "+message.data);
}
};

amq.addListener('list',des,myHandler.rcvMessage);

function getRecords()
{

var myMessage = document.getElementById("num").value;
amq.sendMessage(des, myMessage);
alert("received "+myMessage);
}



</script>
</head>


<body>
title<br>
<input type="TEXT" id="num" />
<br>
<br>
<br>
<input type="button" value="submit" onclick="getRecords()" />

<br>
<div id="recordlist" > </div>
</body>
</html>


这时候打开 http://localhost:8080/activemq-web-console-5.5.0/[your_client_file].html 便可用Ajax向JMS收发消息了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值