ejb@glassfish.java.net

Re: : stateful EJB

From: נחום מורדוכוביץ <nahummor_at_gmail.com>
Date: Thu, 14 Jan 2010 13:32:11 +0200

*i calling the ejb from GWT RPC.*
**
**
package org.yournamehere.server;

import com.google.gwt.user.server.rpc.RemoteServiceServlet;
import javax.ejb.EJB;
import myEjb.CounterRemote;

import org.yournamehere.client.CallEJB;

public class CallEJBImpl extends RemoteServiceServlet implements CallEJB
{
    @EJB
    private CounterRemote counter;

    public String myMethod(String s)
    {
        return "Server says: " + s;
    }

    public Integer getX()
    {
       return counter.getX();
    }

    public void setX(Integer x)
    {
        counter.setX(x);
    }
}
*
*
On Thu, Jan 14, 2010 at 13:17, Dies Koper <diesk_at_fast.au.fujitsu.com> wrote:

> Your EJB code looks good. No surprises :)
> How about your servlet/jsp?
>
>
> On 14/01/2010 20:06, נחום מורדוכוביץ wrote:
>
>> this is the code.
>> * *
>> *Counter.java*
>> *=============*
>> *
>> package myEjb;
>>
>> import javax.annotation.PostConstruct;
>> import javax.ejb.Stateful;
>>
>> @Stateful
>> public class Counter implements CounterRemote
>> {
>> private Integer x;
>>
>> @PostConstruct
>> @Override
>> public void initBean()
>> {
>> this.x = 0;
>> }
>>
>> @Override
>> public Integer getX()
>> {
>> return this.x;
>> }
>>
>> @Override
>> public void setX(Integer x)
>> {
>> this.x = x;
>> }
>>
>> }
>> *
>>
>> The remote interface
>> CounterRemote.java
>> =================
>> package myEjb;
>>
>> import javax.ejb.Remote;
>>
>> @Remote
>> public interface CounterRemote
>> {
>>
>> @javax.annotation.PostConstruct
>> public void initBean();
>>
>> Integer getX();
>>
>> void setX(Integer x);
>> }
>>
>> On Thu, Jan 14, 2010 at 07:54, Dies Koper <diesk_at_fast.au.fujitsu.com
>> <mailto:diesk_at_fast.au.fujitsu.com>> wrote:
>>
>> *Thanks,*
>>
>> *I wrote a simple stateful ejb that store int number and two
>> methods
>> getNumber() and setNumber(int x),*
>> i'm calling the ejb from two separate sessions (two browsers)
>> and if i set the number from first session i can see it from next
>> session by calling getNumber().
>> By your answer I understand it should not be so ?
>>
>>
>> Right, it shouldn't. You must be doing something you're not telling
>> us that make the EJB container think it's the same client. Or you're
>> keeping the value in a static variable or another shared location.
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ejb-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: ejb-help_at_glassfish.dev.java.net
>
>