J'ai installé NetBeans 6.7.1. et son Glassfish V2.1.
En m'inspirant d'un tuto de Patrice Secheresse, j'ai cuisiné un EJB sauce simpliste comme suit :
L'interface remote :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
package Pako;
 
import javax.ejb.Remote;
 
@Remote
public interface CalculetteRemote {
    int additionner(final int a, final int b);    
}
Ejb proprement dit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package Pako;
 
import javax.ejb.Stateless;
 
@Stateless
public class CalculetteBean implements CalculetteRemote {
 
    public CalculetteBean() {
    }
 
    public int additionner(final int a, final int b) {
        return a + b;
    }    
}
et le code client qui appelle l'ejb:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package calc_1;
 
import Pako.CalculetteRemote;
import javax.ejb.EJB;
 
public class Main {
 
    @EJB
    private static CalculetteRemote calculetteBean;
 
    public Main() {
    }
 
    public static void main(String[] args) {
        System.out.println("Résultat " + calculetteBean.additionner(2,3));
    }    
}
Je contrôle dans le FireFox http://admin:4848/ que l'application est bien déployée ...

et bing, quand je lance Main j'ai droit à un java.lang.NullPointerException
sur le calculetteBean.additionner(2,3)

Keske je fais de pas bien ?