Salve,

stavo iniziando a lavorare in java EE e sto iniziando ad entrare dentro ad alcuni meccanismo di questo potente strumento. Fino ad adesso però ho avuto dei problemi ad eseguire il codice, è tipo da una settimana che ci sto provando.

Sto usando netbeans che con i suoi potenti wizard facilita molto il lavoro. Ho provato a seguire anche passo passo questa guida che usa anche lei netbeans:
http://programmaremobile.blogspot.co...b-e.html#links

Ma ho avuto sempre lo stesso problema.

Provo a realizzare un EJB stateless normale con una banalissima interfaccia.
Interfaccia dell'EJB locale.
codice:
package dani;
import javax.ejb.Local;
@Local
public interface sessioneLocal {
    String ciao();
}
EJB:
codice:
package dani;
import javax.ejb.Stateless;
@Stateless
public class sessioneBean implements sessioneLocal {
    public String ciao() {
        return "pippo";
    }
}

Il deploy funziona correttamente. Infatti nella pagina di amministrazione del server la vedo caricata.
EJB MODULES:
Sub Components (1) Name Type
sessioneBean StatelessSessionBean
Il servlet che costruisco con il wizard funziona perfettamente.
Se aggiungo però questa riga di codice:
codice:
public class NewServlet extends HttpServlet {
    @EJB
    private sessioneLocal sessioneBean;
Quando vado a fare il deploy ecco che ho questo errore:
Deploying application in domain failed; Error loading deployment descriptors for module [terdici-war] -- Cannot resolve reference Unresolved Ejb-Ref pippo.NewServlet/sessioneBean@jndi: @null@dani.sessioneLocal@Session@null
D:\Ejb\terdici\terdici-war\nbproject\build-impl.xml:562: The module has not been deployed.
BUILD FAILED (total time: 1 second)

Codice completo servlet:
codice:
package pippo;
import dani.sessioneLocal;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class NewServlet extends HttpServlet {
    @EJB
    private sessioneLocal sessioneBean;
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try {
            /* TODO output your page here*/
        } finally { 
            out.close();
        }
    } 
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    } 

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    @Override
    public String getServletInfo() {
        return "Short description";
    }
}

Sto usando Glassfish 2.1 e netbeans 6.5 .
Ho provato anche in varie combo jboss e netbeans 6.7 .
Non so più che pesci (di vetro) prendere. Il codice è quello che è, quello che tutte le guide forniscono. Sicuramente sarà un errore stupidissimo...boh.
Non sono mai riuscito ad eseguire niente.
Grazie in anticipo.