Т.е. я так понял что уних это дело универсальное. Вот такой код работает:
Code: Select all
Object tmp = ctx.lookup("java:/ConnectionFactory");
System.out.println( "ConnectionFactory> "+tmp );
QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
System.out.println( "QueueConnectionFactory> "+qcf );
TopicConnectionFactory tcf = (TopicConnectionFactory) tmp;
System.out.println( "TopicConnectionFactory> "+tcf );
Т.е. ихний класc имплементит оба интерфейса. Я что то неуютно себя с этим чувствую.
Вот в WebLogic к примеру так:
Code: Select all
<JMSConnectionFactory DefaultDeliveryMode="Persistent"
JNDIName="MyTopicConnFactory"
DefaultTimeToDeliver="500"
UserTransactionsEnabled="true"
Name="TopicConnFactory" Targets="MyServer"/>
<JMSConnectionFactory DefaultDeliveryMode="Persistent"
JNDIName="MyTopicNPConnFactory"
DefaultTimeToDeliver="500"
UserTransactionsEnabled="true"
Name="TopicNPConnFactory" Targets="MyServer"/>
<JMSConnectionFactory DefaultDeliveryMode="Persistent"
JNDIName="MyQueueConnFactory"
DefaultTimeToDeliver="500"
UserTransactionsEnabled="true"
Name="QueueConnFactory" Targets="MyServer"/>
В WebSphere тоже можно свои понасоздавать, а как в JBoss я что то немогу найти.
И еще, как в нем сказать что топик персистент или не персистент?