Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Glassfish @Resource в HttpServlet


Автор: xaoc2 29.4.2009, 21:28
Не хочет втрыскиваться ссылка в сервлет на сервере  glassfish-v2ur2. Хотя тут:
http://docs.sun.com/app/docs/doc/819-3669/bnaeu?l=ru&a=view
написано, что сервлет может принимать в себя ссылки на ресурсы с помощю @Resource

Код

package jnditestresource;
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.Name;

public class JNDITestFactory implements javax.naming.spi.ObjectFactory{

    public Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?, ?> environment) throws Exception {
            return "Hello JNDI!";
    }

}


Вот так не работает:
Код

public class TestJNDIServlet extends HttpServlet {
   
    @Resource(name="custom/TestJNDI")
    // Так тоже не работает:
    // @Resource(mappedName="custom/TestJNDI")
   
    protected static String helloJNDI;
    .................
    .................

А так работает:
Код

public class TestJNDIServlet extends HttpServlet {
   
    protected static String helloJNDI;
    static {
        try {
            InitialContext ctx = new InitialContext();
            helloJNDI = (String) ctx.lookup("custom/TestJNDI");
        } catch (NamingException ex) {
            Logger.getLogger(TestJNDIServlet.class.getName()).log(Level.SEVERE, null, ex);
        }
        
    }
    ....................................
    ....................................


http://picasaweb.google.pl/lh/photo/AB3H9bD2fDOqh2oB_GCy6w?feat=embedwebsite
Оно ещё не заимплементировано, или я чего-то неправильно использую ?



Автор: powerOn 30.4.2009, 09:25
А если попробовать на нестатическом поле?

Автор: xaoc2 30.4.2009, 11:31
Тоже не работает.

Автор: serger 30.4.2009, 15:11
У меня тоже были проблемы. пользовался netbeans. Вроде помогла перекомпиляция проекта.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)