Regarding Local Interfaces..

Hi,
Can anyone please let me know how to get local reference object in the JSP. I am having a remote, home, localhome, local, bean class
I want to get the reference of local object in my JSP.
Please send me the code snippet if possible.
any help in this regard will be highly appreciated.
Thanks a million,
Regards,
Prakash.

Here is a good article on this topic:
http://newsgroups.borland.com/cgi-bin/dnewsweb?cmd=article&group=borland.public.bes.appserver.naming&item=699&utag=

Similar Messages

  • Regarding ENTITY bean local interfaces

    Hi all,
    I have a component session bean - containing a number of service methods for creating, retrieving, updating & deleting instances of a related entity bean. This session bean is used by another session facade bean, which invokes the various service methods in some sequence to complete a major task.
    In the component session bean, the retireve methods return the local interface of the entity bean - on which it operates. The update methods accespt local interfaces of entity bean which can be directly updated.
    My question is : Is it a right approach to pass the entity bean instances between method calls.
    Thanks in advance,
    Baskar

    Your pointers regarding pt 2 was nice. Thanks.
    This being my first J2ee design, I'am just collecting as much information as possible to stay confident.
    Later, I started thinking a bit more regarding pt 1.
    Where, I decided using individual session beans for different components(representing unique functionalities).
    i.e,, I'am just thinking, should I use individual session beans for each of these different components.
    What if I use standard java classes - implementing pre-defined interfaces for each of these components & use the components through these interfaces in session facade.
    Now, I'll be using entity bean creates/retrieves/updates/deletes from inside normal java classes.
    I thought, this would obviate the need for JNDI lookups - each time I want to use the components in my session facade.
    But, I'am not sure of where this will impact..As far as I can visualize, this seems to be normal. Please share ...your thoughts regarding this. (something regarding transactions ??)

  • Weblogic 10.3.2 EJB3 Local Interface in POJO/Helper classes

    Hi,
    I have a jar file containing all EJB's in application & some Helper classes. I want to access Local interfaces of EJBs in those helper classes. Is there any way I can do it? I've gone through Maxence Button & Jay SenSharma 's blogs about accessing Local interface. but it doesn't help. May be these two guys can help me more here.. My requirement is very simple. Just to access local interface in POJO/Helper classes that are in same JAR file as EJB's. I can't get reference with @EJB class level annotation as Helper classes are called independently from MBean services.. not from any EJB or Servlert.
    Please if anyone can tell me how do I get reference of local interfaces, that would be really good.
    my environment is
    Weblogic 10.3.2
    EJB3
    Regards,
    Prasad

    Hi,
    Just check ...If you want something like mentioned in the below Link with a complete Example:
    [http://jaysensharma.wordpress.com/2009/08/16/weblogic-10-3-ejb3-local-lookup-sample/|http://jaysensharma.wordpress.com/2009/08/16/weblogic-10-3-ejb3-local-lookup-sample/]
    Regards
    Jay SenSharma

  • Using local interfaces for EJB (session bean)

    Hi,
    I�ve a question regarding when to use the Local interfaces(EJBLocal and EJBLocalHome) of a enterprise bean. I understand that calls to enterprise bean can be made locally if the client which is invoking is in the same JVM as that of EJB. I�ve written a web client (servlet) which is packaged in a EAR and this servlet is trying to invoke a session bean which is in a �different� EAR using local interfaces. Both the EARs have been deployed in a single server (websphere 6.0 server). It didn�t work for me this way�..If I package the servlet in the same EAR of session bean then it works fine.
    So is this to say that both EARs are not running on the same JVM? Or should it work even if the client and the session bean are in different EARs but in same server?
    Can anyone explain me the fundamentals behind this.
    Thanks in advance

    Local access is only portable within the same .ear. For example, the Java EE SDK and SUN's
    application servers have never supported local EJB access from a web/EJB component in a different
    .ear. One issue is that local access requires that both the caller and target EJB have the same
    classloader. By definition, different Java EE applications have distinct classloaders. In addition,
    in Java EE 5 persistence context propagation does not span applications, so it wouldn't work in the
    local case.
    --ken                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • No performance gain when using local interfaces

    Hello,
    I'm doing some tests to compare performances between remote ejb interfaces and local ejb interfaces.
    I have two stateless session beans EJB1 and EJB2, EJB1 calls a method on EJB2, this method receives one object as the only parameter and returns it immediately. The parameter is a big object (~700ko). My test consists simply of making 1000 calls from EJB1 to EJB2, one time with remote interfaces, one time with local interface. For both tests, the EJBs run in the same container, same VM.
    The results show absolutely no differences between the remote and the local interface !
    As I found these results a bit surprising, I changed the serialization method of my parameter object this way:
    private void writeObject(java.io.ObjectOutputStream out) throws IOException {
    System.out.println("writeObject(MyBigObject)");
    out.defaultWriteObject();
    just to check if my object is serialized when using remote interface. And the response is no.
    So question is: is there an "undocumented optimization" of the stub/skel generated by weblogic which make local calls when calling a remote method inside the same VM ?
    Some precisions:
    - I'am using weblogic 8.1sp2
    - When calling remotely my EJB2 from an external batch (running in a separate VM), I see the message "writeObject(MyBigObject)" so the serialization is done in this case.

    <Fr?d?ric Chopard> wrote in message news:[email protected]..
    So question is: is there an "undocumented optimization" of the stub/skel generated by weblogic which make local calls when callinga remote method inside the same VM ?
    >
    Some precisions:
    - I'am using weblogic 8.1sp2
    - When calling remotely my EJB2 from an external batch (running in a separate VM), I see the message "writeObject(MyBigObject)" sothe serialization is done in this case.
    WebLogic 5.x, 6.x and 7.x do call by reference for co-located EJBs by default. 8.1 has this behavior turned off by default. You may
    experience call-by-reference optimization in 8.1 only if it has been turned on explicitly in the deployment descriptor.
    Hope this helps.
    Regards,
    Slava Imeshev

  • Use remote or local interface in my CMP EB?

    I found it's suggested to writer your CMP EB with Local interface.and a Session Bean with Remote interface.and bundle them into a same EJB JAR file.my end-user client (WAR file) call SB in another JVM.
    I wrote two methods in my SB named [CreateAuser & DeleteAuser] which call enity bean by local interface.
    and I found it wokrs good anywhere while doing Create or Remove an enity object in my jsp files;
    But I have no way to directly call enity bean in jsp files to do database query.
    Do I have to write a method like findbyuserid which calls entity bean's home method findByPrimaryKey()? if so I should rewriter many methods in my SB to meet my jsp files need.
    What shall I do ,what is the common way to do sth like that?

    Hi,
    You SessionBean (Session Facade pattern) should provide service such as Business Service (Create User, Remote User, GetUser ...) that's the role of SessionBean as Session Facade.
    All the method you expect to call from Presentation Tier.
    Regards
    Sebastien Degardin.

  • RPC web service session beans and local interfaces

    I am wondering if it is possible to use EJB 2.0's local
    interface (vs remote interface) with 6.1's RPC web service
    session beans. Since WLS generates the SOAP servlet that
    invokes the RPC session bean and I do not find
    a way to some how tell SOAP servlet to use local interface to
    get the session bean's local home interface, I am not sure
    this can be done.
    Any comments would be appreciated.
    Thanks.
    Peter

    Ta. Thanks for the info.
    Any idea when Local I/F support is due?
    -Nick
    "Neal Yin" <[email protected]> wrote:
    >
    "Nick Minutello" <[email protected]>
    wrote
    in message news:3d4413a4$[email protected]..
    I was just about to post the very same question - but for WLS 7.0.0.1.
    There are essentially two questions:
    1) (from a functional perspective)
    Can I expose Local Interfaces as SOAP using the auto-generation(servicegen ant
    tasks)?Local Interfaces support is coming.
    2) (from a performance perspective)
    Does the generated SOAP implementation go via the (expensive) RemoteInterface
    (ie marshalling) - or is the RMI marshalling optimised out (by setting<enable-call-by-reference>true</>)?
    You can set this option by yourself on your EJB. Web service runtime
    doesn't
    do any magic in this area.
    Regards,
    Nick
    "Peter" <[email protected]> wrote:
    I am wondering if it is possible to use EJB 2.0's local
    interface (vs remote interface) with 6.1's RPC web service
    session beans. Since WLS generates the SOAP servlet that
    invokes the RPC session bean and I do not find
    a way to some how tell SOAP servlet to use local interface to
    get the session bean's local home interface, I am not sure
    this can be done.
    Any comments would be appreciated.
    Thanks.
    Peter

  • EJB Local Interfaces

    My understanding is that the concept of local interfaces (i.e.
    direct invocation in lieu of an IPC) exist in EJB 2.0. Does
    OC4J support this today? If not, will there be support for it
    in 9i AS 2.0?
    Thanks.

    oc4j/orion supports ejb 2.0 as it stood in the second draft.
    There have been many changes since then, including dropping DO's
    and using Local Interfaces instead.
    OC4J/Orion will have a new version by the end of this year or
    early next year which will implement ejb 2.0.
    Until then, if you want the speed you would get with local
    interfaces in oc4j/orion, you can modify your orion-ejb-jar.xml
    to use copy-by-value="false". This will give you the same
    performance gain as using local interfaces. Its a hack, but what
    the heck, it works.
    Regards,
    the elephantwalker
    www.elephantwalker.com

  • Lookup for local interfaces.

    Isn't lookup for local interfaces allowed from web client. I have defined a
    ejb-reference for the bean in my web.xml. When I do a lookup as
    TestBeanLocalHome home = (TestBeanLocalHome)
    ic.lookup("java:comp/env/ejb/TestBeanLocal");
    This statement result in an error
    javax.naming.NameNotFoundException: Unable to resolve
    comp/env/ejb/TestSLSBeanLocal/ Resolved: 'comp/env/ejb'
    Unresolved:'TestBeanLocal' ; remaining name ''
    at
    weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingN
    ode.java:887)
    at
    weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:219)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:183)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:339)
    at
    weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(ReadOnlyContextWr
    apper.java:36)
    at
    weblogic.jndi.internal.AbstractURLContext.lookup(AbstractURLContext.java:124
    at javax.naming.InitialContext.lookup(InitialContext.java:345)
    at jsp_servlet.__client._jspService(__client.java:108)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :265)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :200)
    at
    weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
    ntext.java:2495)
    at
    weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
    :2204)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    The same thing works when lookup is done for remote interface.
    Regards,
    Rupesh.

    You need to use "ejb-local-ref" to refer to local interfaces. I meant
    "ejb-local-ref" element was not available in web.xml in Servlet 2.2. They
    were added in Servlet 2.3 specification. So unless your app server is
    Servlet 2.3 compliant it does not need to support references to local
    interfaces in web components (servlets or jsps). Weblogic 6.1 did not seem
    to support them last time I tried.
    -- Anand
    "Rupesh" <[email protected]> wrote in message
    news:[email protected]...
    what do u mean by local interface in web component? its ejb's local
    interfaces and lookups are any way being
    done using ejb-ref and ref mapping are given in weblogic.xml.
    Where does Servlet spec come into the picture?
    Do you mean to say that you can not lookup for local home from a jsp in
    WL6.1?
    Regards,
    Rupesh.
    Anand Byrappagari <[email protected]> wrote in message
    news:[email protected]...
    Are you using Weblogic 6.1? Then local interfaces in web components arenot
    supported. Local interfaces were added only in Servlet 2.3 I think.Weblogic
    6.1 is not completely compliant with Servlet 2.3.
    -- Anand
    "Rupesh" <[email protected]> wrote in message
    news:[email protected]...
    Isn't lookup for local interfaces allowed from web client. I have
    defined
    a
    ejb-reference for the bean in my web.xml. When I do a lookup as
    TestBeanLocalHome home = (TestBeanLocalHome)
    ic.lookup("java:comp/env/ejb/TestBeanLocal");
    This statement result in an error
    javax.naming.NameNotFoundException: Unable to resolve
    comp/env/ejb/TestSLSBeanLocal/ Resolved: 'comp/env/ejb'
    Unresolved:'TestBeanLocal' ; remaining name ''
    at
    weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingN
    ode.java:887)
    at
    weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:219)
    atweblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:183)
    atweblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    atweblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    atweblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    atweblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:339)
    at
    weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(ReadOnlyContextWr
    apper.java:36)
    at
    weblogic.jndi.internal.AbstractURLContext.lookup(AbstractURLContext.java:124
    at javax.naming.InitialContext.lookup(InitialContext.java:345)
    at jsp_servlet.__client._jspService(__client.java:108)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :265)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :200)
    at
    weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
    ntext.java:2495)
    at
    weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
    :2204)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    The same thing works when lookup is done for remote interface.
    Regards,
    Rupesh.

  • Deployment error in 9.0.3 for app with local interface

    While attempting to port an EJB-application from jboss to oracle, I have encountered a deployment error in 9.0.3 9iASR2 which I cannot decipher. The same ear-file is successfully deployed on the 9.0.3. OC4J standalone version (both on a machine running winXP)
    I get a "syntax error in source" when I attempt the deployment and all my local-interface class-files end up on the j2ee_home root, i.e. <oracle-home>/j2ee/home/.
    Am I too early using local interface on version 9.0.3, is my packaging messed up or should I look for my bugs in some missed logfile?
    BTW: where do I find deployment stack traces for this version of 9iAS?
    Dag

    Hi,
    you can find deployment stack traces in the following location \ORACLE\806\opmn\logs. i think this might help u.
    I am also facing a problem like com.evermind.compiler.CompilationException: Syntax error in source,did u know cause for this.
    Thanks and Regards,
    Bala

  • [JNDI] problem to publish local interface

    I have a problem (same as OC4J AS), the remote interface work well, but I can't use the local interface:
    package be.starapic.test.ejb;
    import javax.ejb.Local;
    import javax.ejb.Stateless;
    @Stateless(name="mysession2", mappedName="mysession2")
    @Local(MySession2Local.class)
    public class MySession2Bean implements MySession2Local {
         public String sayHello2() {
              return "You are welcome :)";
    Can't find that Local interface when browsing JNDI tree, so I guest you, what must I do ??? I think it would work because I use mappedName, but won't work with local interface :(

    Hi,
    Are you implementing Windows Azure Pack [WAP] solution ?
    If so, then I would request to post your question once again on the Azure Pack Forum.
    http://social.msdn.microsoft.com/forums/azure/en-US/home?forum=windowsazurepack
    Regards,
    Mekh.

  • How will be the weblogic-ejb-jar and ejb-jar xml for EJB Local Interface?

    Hi,
    I have one ear application which is using Stateless Session Beans. I don't have any Bean to Bean communication . At present, the client is invoking remote methods thro Home/Remote interfaces. My doubt is , shall I implement EJBLocal home/ local interface to obtain this same functionality cos, in this app, both client and EJb bean have been deployed in same JVM. Can Local interfaces only be applicable to Bean - Bean relation ship?If LocalHome/Local interfaces can be implemented in my scenario, then may I know how will be the ejb-jar.xml and weblogic-ejb-jar.xml?
    thanks and regards,
    Venkat.

    Local interfaces are for communication between ejbs and their clients when both are in the same JVM. The clients can be normal clients, jsps, servlets, and other ejbs. If the client is not in the same JVM you cannot use local interfaces even though your client is another ejb.
    Advantage of using local interface is it reduces the network overhead.
    For more information you can download Mastering Enterprise Java Beans Third Edition by Ed Roman. You can go through 45
    You can download pdf version from.
    http://www.theserverside.com/books/wiley/masteringEJB/index.tss.
    Let me know the URL of the ejb doc that you referred.
    Thanks..

  • Convert a local interface to the remote interface

    Hello *
    Is it possible to convert a local interface to the same bean's remote interface?
    Regards,
    Lukas

    Thanks for the reply.
    I have simpliefied the lookup to the following:
    Context ctx = new InitialContext();
    spiHome = (ServiceProviderBeanLocalHome) ctx.lookup ("ServiceProviderBeanEJB");
    I still get the following exception:
    javax.naming.NameNotFoundException: ServiceProviderBeanEJB not found
    at com.sun.enterprise.naming.TransientContext.doLookup(TransientContext.java:174)
    I looked up the deployment descriptor from J2EE RI and took the name
    to lookup from the ejb-name:
    <ejb-jar>
    <display-name>localSPIJAR</display-name>
    <enterprise-beans>
         <entity>
              <display-name>ServiceProviderBeanEJB</display-name>
              <ejb-name>ServiceProviderBeanEJB</ejb-name>
    I presume that this is the correct name to use.

  • Remote interface / Local interface

    Hi
    I would like to if its possible to avoid using remote interfaces completely and improve performance by using - JSP -> Servlet -> (local interface) Session bean -> Entity bean ???
    Let the client call from JSP which is sent to control servlet which uses local-interface to send the request to a session bean that may in turn interact with Entity bean ?
    Is there any specific guidelines regarding that ?
    Thanks
    Ramesh

    building thru ANT is much more helpful, fast and efficient(I personally haven't tried any tools for builing EARs...:-)....Check out the EAR task in the ANT documentation...it describes each of its option and you will also find the EXAMPLES which you can download and tweak according to your beans....

  • Remote and local interface on same ejb 3.0 bean instance

    Hi,
    Is it posible to get remote and local interface on same ejb 3.0 bean instance.
    For example get local interface of a bean and than pass it as remote to client.
    Both interfaces must operate on same bean instance.
    Thanks
    Zlaja

    yes. You can implement multiple interfaces on a single class, so you can add a local and a remote interface. One trick to avoid duplicate code is to simply make the remote interface extend the local interface; then you only have to add the @Remote annotation and you're done.
    For example get local interface of a bean and than pass it as remote to client.You don't pass an instances to a client, a client looks up a remote instance of the bean through JNDI.

Maybe you are looking for