Агент при запуске на сервере вываливается с ошибкой

Тема в разделе "Lotus + Java + LS2J", создана пользователем lotususer, 16 июн 2009.

Наш партнер Genesis Hackspace
  1. lotususer

    lotususer Гость

    Здравствуйте!

    Может кто сталкивался...

    Есть Java агент, который слушает очередь mq и достает оттуда входяшие сообщения.
    Когда агент запускался вручную на клиенте все работало, после запуска агента по расписанию на сервере агент выполняться перестал с ошибкой
    Код (Text):
    Admin Process: Searching Administration Requests database
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') printing: Getting message ...
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message: java.lang.ExceptionInInitializerError
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.pcf.PCFAgent.connect(PCFAgent.java:236)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.pcf.PCFAgent.<init>(PCFAgent.java:174)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.pcf.PCFMessageAgent.<init>(PCFMessageAgent.java:146)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.jms.context.MQContext.<init>(MQContext.java:183)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.jms.context.WMQInitialContextFactory.getInitialContext(WMQInitialContextFactory.java:29)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:675)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:257)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at javax.naming.InitialContext.init(InitialContext.java:233)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at javax.naming.InitialContext.<init>(InitialContext.java:209)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at JavaAgent.NotesMain(JavaAgent.java:141)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at lotus.domino.AgentBase.runNotes(Unknown Source)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at lotus.domino.NotesThread.run(Unknown Source)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message: Caused by: java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key access_property_not_allowed
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at java.util.ResourceBundle.getObject(ResourceBundle.java:329)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at java.util.ResourceBundle.getString(ResourceBundle.java:289)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at lotus.notes.JavaString.getFormattedString(JavaString.java:101)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at lotus.notes.AgentSecurityManager.checkPropertyAccess(AgentSecurityManager.java:679)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at java.lang.System.getProperty(System.java:643)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.MQEnvironment$1.run(MQEnvironment.java:493)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at java.security.AccessController.doPrivileged1(Native Method)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at java.security.AccessController.doPrivileged(AccessController.java:287)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   at com.ibm.mq.MQEnvironment.<clinit>(MQEnvironment.java:485)
    AMgr: Agent ('FinalGetMessage' in 'inbox_SVR.nsf') error message:   ... 12 more
    все падает при попытке в коде взять текущий контекст:
    Код (Text):
       
    java.util.Hashtable env = new java.util.Hashtable();
    env.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, "com.ibm.mq.jms.context.WMQInitialContextFactory");
    env.put(javax.naming.Context.PROVIDER_URL, ip_port); //ip,port и канал
    InitialContext ctx = new InitialContext(env);// exception here!
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.188
    Симпатии:
    308
    а вы уверены, что надо так инициализировать?
    потому как ошибка может свидетельствовать об отсут. пропертей, например вот:
    http://mail-archives.apache.org/mod_mbox/t...stfamily.com%3E
    др. словами - к-нить jar недоступен (лежит не там)
     
  3. lotususer

    lotususer Гость

    когда мы добавляем jar-ники при создании агента они же "кочуют" вместе с агентом? в независимости от того, как он запускается (на клиенте или на сервере)
    т.е. агент можно запускать в любой базе на любой машине, даже где нет этих jar-ников на файловой системе.
    или я не правильно предполагаю?
    может с контекстом что то не так при запуске на сервере?
     
  4. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.188
    Симпатии:
    308
    точно механизма я не знаю (эмуляции путей в жвм), но сторонние jar, на сервере, лучше положить в jvm/lib/ext (программный каталог), а не юзать из базы (в базе - удалить)
     
  5. lotususer

    lotususer Гость

    lmike, спасибо большое за помощь!
    Лучше ложить либы в папку ext, так агент отрабатывает!
     
  6. afest

    afest Well-Known Member

    Регистрация:
    16 июн 2009
    Сообщения:
    78
    Симпатии:
    0
    права сервера на агент в администраторе проверь... локально по любому будет работать, а на сервере свои заморочки
     
Загрузка...

Поделиться этой страницей