Bonjour
Je me decide a poster car rien ne marche apres maintes recherches.
J'essaie de mettre en oeuvre un EJB stateful qui sera par la suite expose en WEB service.

Mon interface
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
@Remote
@WebService
// @SOAPBinding(style = Style.RPC)
public interface IBillingEjbService
{
 
    public int synchronize(String partnerName);
    public int endService();
 
}
Mon 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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
@Stateful
@WebService(endpointInterface = "IBillingEjbService")
// @Interceptors(SpringBeanAutowiringInterceptor.class)
public class BillingEjbService implements IBillingEjbService
{
 
    private final Logger            logger = Logger.getLogger(this.getClass());
    // @Autowired
    private Integer                 test   = 0;
 
    public BillingEjbService()
    {
        this.logger.debug("Constructed");
        this.test = 0;
    }
 
    @Override
    @WebMethod(operationName = "Synchronize")
    public int synchronize(@WebParam(name = "partnerName") String partnerName)
    {
        // TODO Auto-generated method stub
        this.test++;
        return test;
    }
 
 
 
    @Override
    @Remove
    @WebMethod
    public int endService()
    {
        // TODO Auto-generated method stub
        this.logger.debug("destroy");
        return 0;
    }
}
Ainsi mon EJB doit donc compter.
Je lance le tout avec Jboss sans souci.
J'accede au WSDL et l'importe dans SOAP UI.
J'appelle la fonction initialize et a chaque appel il incremente la valeur de test.

Selon ma comprehension, si j appelle la fonction endService l'ejb est detruit et un nouvel appel de inialize creerait un nouvel EJB pour recmmencer a compter.
Mias rien de tel. Lorsque j'appelle initialize apres avoir appelle endService, le comptage continue comme si l'ejb etait toujours present.

J'ai aussi essayer d'y accedeer avec deux instances de Soap UI sur des machines separees. et le resultat est le meme. une seule instance de l'ejb semble servir les deux clients.
Y a til d'autres choses a ajouter a ma configuration?

Merci d'avance