Weblogic dynamic download of stubs?


EJB programming & troubleshooting: Weblogic dynamic download of stubs?

  1. Weblogic dynamic download of stubs? (7 messages)

    Does anyone know whether or not weblogic supports dynamic downloading of stubs. For instance, I have a client on a seperate box that is contacting my appserver and looking up a home. Well the home stub does not get downloaded to my client as would be the case w/ traditional RMI. The only way it will run is if I place the generated stubs (EJBJar) on the client. Maybe the problem lies in JNDI. In traditional RMI one usually gets their starting point from RMIRegistry which *will* download the stubs if they are not in the registry's classpath.
  2. Weblogic dynamic download of stubs?[ Go to top ]

    I searched through the docs on the weblogic homepage but they didn't seem to mention stub downloading anywhere.
  3. Weblogic dynamic download of stubs?[ Go to top ]

    Wassupp Ed,
    Well that sucks doesn't it. :-)
  4. I am quite certain that the stubs do get downloaded under WebLogic 5.1.0. I am quite successfully invoking beans from clients that only have the remote interfaces in their classpath. I am 100% positive that the ejbc-generated code is not in the classpath of my client applications. What is your specific diagnostic?

    Gene Florintsev
    gene at ejbility dot com

  5. Gene,
    I have a standalone little baby java app that does a JNDI lookup on the home and it can not reconstitute the serialized object. There are *NO* extra classes in my classpath. However, as soon as I show it the ejbJar it does just fine?

  6. They made some fixes around this in sp3, make sure you are running that or sp4 (better). You should be able to run a client app having only the remote interfaces in the classpath (+default Weblogic classes)... Sorry, I am out of ideas.
    - Gene
  7. Gene,
    Thanks for your help. I have also been given advice to register the ClasspathServlet. I am running SP4. I have not yet tried this yet. I have been too busy. Thanks for your help. It was not really anything that I needed to do for work. I was just curious.

    Thansk again for your help.
  8. I test the following exemplary scenario regarding dynamic implementation download. Let's say there is a statless EJB deployed (e.g. OrderHandler) with a method getOrder() returning Order object; where Order is actually an interface extending java.io.Serializable. For Order there is implementation class OrderImpl. Within the getSomeOrder() the EJB creates a new OrderImpl, populates it and returns as interface. The client looks up OrderHandler and calls getSomeOrder() method. Then, on Order a dummy: String getName() method is called.

    Now, the problem is various behavior with implementation dynamic download. I receive different behavior from 2 clients (1st being launched from within LAN with the server, 2nd from outside server's LAN). When I put OrderImpl in clients' classpaths, obviously they both work the same. When I leave only Order interface (!!the very goal of the test - dynamic impl. download!!), only the 1st client still works. I measured times in milis, and it looks that the OrderImpl is really downloaded, as the first getSomeOrder() call lasts around 10 times as long as further calls.

    The 2nd client hangs a while on the getSomeOrder() call and then throws UnmarshallException, stating that it has failed to unmarshal the returned object, which basically means no implementation got downloaded.

    Can anyone help?