[ openjms-Bugs-856383 ] queue names longer then 50 chars
"SourceForge.net" <[email protected]>
| Newsgroups | gmane.comp.java.openjms.devel |
|---|---|
| Message-ID | <[email protected]> |
Bugs item #856383, was opened at 2003-12-09 06:00
Message generated for change (Comment added) made by tanderson
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=474136&aid=856383&group_id=54559
Category: persistence
Group: v0.7.6-rc2
Status: Open
Resolution: None
Priority: 5
Submitted By: Andrew Surinov (grimreaper777)
>Assigned to: Tim Anderson (tanderson)
Summary: queue names longer then 50 chars
Initial Comment:
Queue is created but QueueSender call throws an
exception
I think the root of the problem is in the table definitions:
destination name is varchar(255), while consumer name
is varchar(50)
Here is a piece of code (skipping some details):
String queueName
= "Very_Long_Queue_Name_Containing_More_than_50_ch
aracters";
jmsAdmin.addDestination(queueName, Boolean.TRUE);
//no exception, apparently queue has been created
successfully
QueueSession session = _connection.createQueueSession
(false, Session.AUTO_ACKNOWLEDGE);
Queue queue = (Queue) initialContext.lookup
(queueName);
QueueSender sender = session.createSender(queue);
BytesMessage bytesMessage =
session.createBytesMessage();
sender.send(bytesMessage);
//and this line throws an exception:
org.exolab.jms.persistence.PersistenceException: Cannot
add message handle id=ID:a0e13e0c-b8bc-1004-8a4f-
76cae27ea3c6 for
destination=Very_Long_Queue_Name_Containing_More_th
an_50_characters and
consumer=Very_Long_Queue_Name_Containing_More_tha
n_50_characters since the consumer cannot be mapped
to an id
at
org.exolab.jms.persistence.MessageHandles.addMessageH
andle(MessageHandles.java:253)
at
org.exolab.jms.persistence.RDBMSAdapter.addMessageHa
ndle(RDBMSAdapter.java:467)
at
org.exolab.jms.messagemgr.MessageHandleFactory.creat
ePersistentHandle(MessageHandleFactory.java:347)
at
org.exolab.jms.messagemgr.MessageMgr.addPersistentMe
ssage(MessageMgr.java:378)
at org.exolab.jms.messagemgr.MessageMgr.add
(MessageMgr.java:281)
at
org.exolab.jms.server.JmsServerSession.sendMessage
(JmsServerSession.java:350)
at
org.exolab.jms.client.intravm.IntravmJmsSessionStub.sen
dMessage(IntravmJmsSessionStub.java:162)
at
org.exolab.jms.client.JmsSession.sendMessage
(JmsSession.java:676)
at
org.exolab.jms.client.JmsMessageProducer.sendMessage
(JmsMessageProducer.java:238)
at org.exolab.jms.client.JmsQueueSender.send
(JmsQueueSender.java:156)
at org.exolab.jms.client.JmsQueueSender.send
(JmsQueueSender.java:105)
----------------------------------------------------------------------
>Comment By: Tim Anderson (tanderson)
Date: 2004-01-02 18:45
Message:
Logged In: YES
user_id=557161
You're correct. There is a mismatch between the master
schema.xml (src/main/org/exolab/jms/tools/db/schema.xml)
definition and those in the src/config/db/create*.sql scripts.
The schema.xml file has both destination and consumer
names as varchar(252), whereas most of the sql scripts have
the consumer name as varchar(50).
Will update them.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=474136&aid=856383&group_id=54559
-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click