|
|
|
jms
|
|||
|---|---|---|---|
|
#18+
есть один класс реализованый двумя способами ( см. ниже) может кто подскажет , почему первый вариант отрабатывается без ошибок , а второй выдаёт Exception, причём , если в первом варианте закоментировать строки : Hashtable h = new Hashtable(); h.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory"); получится тот же Exception: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial 1) import javax.jms.*; import javax.naming.*; import java.util.Hashtable; import java.net.URL; public class jmsRecipient { //public jmsRecipient(){ public static void main(String[] args) { try{ Hashtable h = new Hashtable(); h.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory"); Context ctx = new InitialContext(h); QueueConnectionFactory qcf = (QueueConnectionFactory)ctx.lookup("MyConnectionFactory"); QueueConnection con = qcf.createQueueConnection(); QueueSession session = con.createQueueSession(false,Session.AUTO_ACKNOWLEDGE); Queue queue = null; try{ queue = (Queue)ctx.lookup("MyQueue"); }catch(NameNotFoundException nnfe){ queue = session.createQueue("MyQueue"); ctx.bind("MyQueue", queue); } // Создадим Consumer QueueReceiver receiver = session.createReceiver(queue); // Активизируем Connection con.start(); //Мы готовы принимать сообщения for(;;){ //Обратите внимание на использование метода receive() TextMessage textMessage = (TextMessage)receiver.receive(); System.out.println("Got a message :"+textMessage.getText()); } }catch(Exception e){ e.printStackTrace(); } } } Работает! 2) class jmsRecipient: import javax.jms.*; import javax.naming.*; import java.util.Hashtable; import java.net.URL; public class jmsRecipient { public jmsRecipient() { try{ Hashtable h = new Hashtable(); h.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory"); Context ctx = new InitialContext(h); QueueConnectionFactory qcf = (QueueConnectionFactory)ctx.lookup("MyConnectionFactory"); QueueConnection con = qcf.createQueueConnection(); QueueSession session = con.createQueueSession(false,Session.AUTO_ACKNOWLEDGE); Queue queue = null; try{ queue = (Queue)ctx.lookup("MyQueue"); }catch(NameNotFoundException nnfe){ queue = session.createQueue("MyQueue"); ctx.bind("MyQueue", queue); } // Создадим Consumer QueueReceiver receiver = session.createReceiver(queue); // Активизируем Connection con.start(); for(;;){ TextMessage textMessage = (TextMessage)receiver.receive(); System.out.println("Got a message :"+textMessage.getText()); } }catch(Exception e){ e.printStackTrace(); } } } class A : public class A { public static void main(String[] args){ jmsRecipient b = new jmsRecipient(); } } ругается ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:25:32 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
Не делай всего в конструкторе и будет тебе счастье. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:33:06 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
anton_evaneНе делай всего в конструкторе и будет тебе счастье. ну если делать не в конструкторе , а в методе , то счастья не прибавляется =(( та же фигня ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:40:42 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
anton_evaneНе делай всего в конструкторе и будет тебе счастье. так если не в конструкторе , а в методе делать, счастья не прибавляется. та же фигня ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:47:34 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
обычно пользуюсь jndi.properties до сих пор везло ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:48:29 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
exppобычно пользуюсь jndi.properties до сих пор везло ... с jndi.properties ошибка пропала, спасибо, но, usss? появилась другая : javax.naming.NameNotFoundException: ConnectionFactory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:54:07 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
опять не понял ... вы используете файловый сановский jndi "сервер" ... в нём эту ConnectionFactory ктоннить зарегал? (своё состояние он хранить в корне в текстовом файле). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 17:58:43 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
exppопять не понял ... вы используете файловый сановский jndi "сервер" ... в нём эту ConnectionFactory ктоннить зарегал? (своё состояние он хранить в корне в текстовом файле). сори вижу , а как проинециализировать QueueConnectionFactory qcf ? если там пусто , должна быть какая то ConnectionFactory для этого "стандартная - существующая" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 18:04:20 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
если до этого никто не регел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 18:05:34 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
с чего бы ?? кто то должен поднять эти JMS ресурсы . см. конфиг вашей JMS impl (server) вы ведь хотели использовать MDB. думаю, для получения JMSок целесообразно использовать какойннить ejbсервак .... (если синхронные коммуникации не решают всех проблем) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 18:09:23 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
exppс чего бы ?? кто то должен поднять эти JMS ресурсы . см. конфиг вашей JMS impl (server) вы ведь хотели использовать MDB. думаю, для получения JMSок целесообразно использовать какойннить ejbсервак .... (если синхронные коммуникации не решают всех проблем) MDB. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 18:12:22 |
|
||
|
jms
|
|||
|---|---|---|---|
|
#18+
exppMessage-driven EJBean аааа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2007, 18:32:58 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34562341&tid=2145567]: |
0ms |
get settings: |
13ms |
get forum list: |
20ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
58ms |
get topic data: |
17ms |
get forum data: |
4ms |
get page messages: |
80ms |
get tp. blocked users: |
2ms |
| others: | 338ms |
| total: | 544ms |

| 0 / 0 |
