LINUX.ORG.RU

ejb3 @Resource работает в зависимости от погоды


0

0

То есть в сервлетах работает, а в обычных классах из тогоже 
приложения нет, в чем фокус? Код абсолютно идеентичен, и в сервлете и
 в классе:

public class JMSTest {
    @Resource(mappedName= "jms/ConnectionFactory")
    private static ConnectionFactory connectionFactory;
    @Resource(mappedName="jms/Queue")
    private static Queue queue;

    public void send(String mess) throws JMSException {
        Connection connection = connectionFactory.createConnection();
        Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
        MessageProducer messageProducer = session.createProducer(queue);
        ObjectMessage om = session.createObjectMessage();
        Hashtable<String,String> params = new Hashtable<String, String>();
        params.put("request", mess);
        om.setObject(params);
        messageProducer.send(om);
        messageProducer.close();
        session.close();
        connection.close();
    }
}

Если метод send скопировать в сервлет (есесно с полями) и вызвать из 
processRequest то все работает. В простом классе не работает.

В сервлете поля не статические, в классе делал и статическими и не 
статическим один фиг, осталось последнее подозрение что класс должене
 реализовывать Seriasable но почему тогда это нигде не написанно?
★★☆

телепаты говорят, что тупая белка не осилила даже j2ee manual, потому что там написано про аннотации @Local, @EJB, @Stateless, @Stateful и прочие для классов.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.