Discussions

EJB programming & troubleshooting: How to pack a Session bean & its client on the same server.

  1. I have the follwoing set up. I have a bean called SOFBean. I am calling the bean from SOFServerConnector class. As the name suggest the SOFServerConnector class reside on the same server rather than remote client but in a diffrent folder.

    wlserver6.1/config/mydomain/applications/SOFBeanpack.jar
    wlserver6.1/config/mydomain/external/SOFserver.jar

    using <ejb-client-jar>SOFinterface.jar</ejb-client-jar> I have generated the Home & Remote classes & placed in the same folder as
    wlserver6.1/config/mydomain/external/SOFinterface.jar

    This gives <Warning> <EJB> <EJB Deployment: SOFBean cannot be redeployed while the server is running. com.sofia.sof.SOFBean is located in the server's classpath.> And finally it results in some error.

    But if I remove the SOFinterface.jar from external I am getting java.lang.NoClassDefFoundError: unable to locate the SOFHome exception. I tried to add the EJB location thru manifest Class-Path. But it results in the same Warning like above. I also tried vice-varsa.

    Please tell me how I can pack these together without any problem ?
  2. Sounds like maybe the SOFInterface.jar has an ejb-jar.xml file in it. Otherwise I don't know why the app server would try to deploy it.
  3. No, I am not packing the ejb-jar.xml with the SOFinterface.jar. By sensing the SOFHOme & SOFRemote weblogic is trying to redeploy it.
  4. I'm afraid I'm stumped. I don't know weblogic well enough to figure out what it is trying to do. If I get some time in the near future I will try to duplicate your problem. But for now, I hope someone else has a solution.