我试图从JMS队列中读取消息,但我希望按排序顺序读取。我想按时间戳排序,因为这是消息恢复脚本所必需的,该脚本将消息从错误队列移动到主队列。你知道吗
我尝试了API中提到的以下sort()方法,但它对我不起作用;我也找不到为相同方法提供的任何示例:
下面是jython脚本.py我有:
from java.util import Date
from java.io import FileInputStream
from weblogic.jms.extensions import JMSMessageInfo
import java.lang
import os
import string
import datetime
import time
cd('/JMSRuntime/'+sourceServerName+'.jms/JMSServers/'+sourceJmsServerName+'/Destinations/'+sourceSystemModuleName +'!' +sourceJmsServerName+ '@' + sourceQueueName)
sourceQueue=cmo //assigning current management object
sourceMessages=sourceQueue.getNext(sourceCursor, 10) //10 = batch size
if sourceMessages == None:
print 'No message to be moved!!'
else:
print 'Moving below Message ID'
for message in sourceMessages:
msgwithbody = JMSMessageInfo(message)
messageId = msgwithbody.getMessage().getJMSMessageID()
messageTime=msgwithbody.getMessage().getJMSTimestamp()
monthvalue=int(Date(messageTime).getMonth())+int(1)
yearvalue=int(Date(messageTime).getYear())+int(1900)
如果我能够在读取JMS队列时对其进行排序,那么将消息从错误队列移动到主队列将更容易。这将变得更容易,因为我将根据时间戳移动它。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐