Skip to Content
avatar image
Former Member

In my NWDS "Build EJB Archive" is not actitivated?

Hi all!

I created an EJB project and imported some files in to my EJB project. When i try to build my EJB Archive, it is not activated. I tried even a simple EJB project, for that also Build EJB Archive is not activated. Help me

Thanks a lot in advance!

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

6 Answers

  • Best Answer
    avatar image
    Former Member
    May 31, 2006 at 01:43 PM

    Hi,

    If u import some files into EJB Project, EJB archive wont be enabled. This is because as per the EJB Project, not even a single EJB has been created. Only after a bean is created, the archive will be enabled.

    I have found a simple work around for this.

    1. Create a new EJB Project.

    2. Create a new package with name as specified in the files to be imported.

    3. Create a new stateless EJB bean with name same as the bean name inside your files to be imported. ( hope u r working on java proxies)

    4. Now it will generate 5 classes ( bean, home, local, localhome and remote).

    5. Copy and paste the contents from files to these classes.

    Hope this helps you.

    Get back for more clarifications.

    Regards,

    Uma

    Add comment
    10|10000 characters needed characters exceeded

    • The local and remote interfaces are not created, as they are inside the library.

      You should <b>not</b> create the EJB with the developer studio when you work with Java proxies.

      I send you my how-to guide to your email address, as you have no access to service.sap.com

      Do the same steps as described inside.

      Regards

      Stefan

  • avatar image
    Former Member
    Jun 01, 2006 at 04:13 AM

    Hi,

    Server Java Proxy dont have local,localhome and remote.

    >> Without these files is it possible to generate ejb.jar <<

    Yes, it is possible to generate ejb.jar.

    >> FolderMI_PortTypeImpl.template(is it necessary?) <<

    This is necessary file in which the implementation logic must be coded. Name this as FolderMI_PortTypeImpl.java class and use the template given.

    I have mailed u docs about server java proxy.

    Regards,

    Uma

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Uma!

      I have done all the steps specified by you. I have recreated the whole EJB project again. But still the problem( Build EJB Archive is not enabled) persists.

      Regards,

      Datta

  • avatar image
    Former Member
    Jun 01, 2006 at 09:13 AM

    Hi,

    >> The error meant to say it is a Bean Problem: No interfaces classes found . <<

    Go to Package explorer view. Close the EJB project and open it. This will solve the Bean Problem.

    Hope this helps.

    Regards,

    Uma

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Uma!

      I have deployed the .ear file onto SAP J2EE engine and also registered.

      I am trying the following scenario:

      /people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy

      How to test? If i want to test using HTTP Client prg.

      I have given the following params in HTTP Client

      Server :spep

      Server Port: 50000

      Client: 100

      Sender Interface: Folder_MI

      Sender Namespace:htpp://jps.com

      XML Payload:????? what should be given here?

      Should i give Foldername like:

      <Foldername_DT>
      10.7.1.36\qf</Foldername_DT>

      am i right?

      is there any other way out!like RWB?

      Thanks a lot!

  • May 31, 2006 at 11:28 AM

    refer this link :

    build-ejb-archive-unsuccessfull

    I had the same problem which was solved ...

    Add comment
    10|10000 characters needed characters exceeded

  • May 31, 2006 at 12:01 PM

    It is not active, when the project contains errors.

    Check the errors.

    Stefan

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jun 01, 2006 at 05:49 AM

    Hi,

    Follow the steps i have suggested in my first post in this thread. you can exclude remote interfaces while creating EJB. Dont worry about the local interfaces which will get generated in developer studio. ( As i said earlier this is a work around to get Build Archive enabled).

    Copy and paste the class contents of FolderMI_PortTypeBean.java.

    Paste the other files directly (FolderMI_PortTypeBean.java, FolderMI_PortTypeImpl.java, FoldernamDT_Type.java)

    Edit the ejb-jar.xml file as given in the document.

    Now, you can see Buil EJB Archive enabled.

    Regards,

    Uma

    Message was edited by: Uma Maheswari

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi

      I have done what you said in your first post, Build EJB Archive is enabled very well, but i got deployment error when deploying .ear file to J2EE engine.

      Actually I build an Enterprise project and addded this EJB project to that, and built .ear file and this ear file is deployed onto SAP J2EE engine:

      I got this deployment error:

      Result

      => deployment aborted : file:/C:/DOCUME1/ADMINI1/LOCALS~1/Temp/temp14071Jps_Ear.ear

      Aborted: development component 'Jps_Ear'/'sap.com'/'localhost'/'2006.06.01.11.40.12':

      Caught exception during application deployment from SAP J2EE Engine's deploy service:

      java.rmi.RemoteException: Cannot deploy application sap.com/Jps_Ear.. Reason: Incorrect application sap.com/Jps_Ear:Bean FolderMI_PortTypeBean: the return type of a create method in the session bean home interface must be the session bean's remote interface type. EJB specification 7.10.6.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface does not extend javax.ejb.EJBObject. The remote interfaces must extend javax.ejb.EJBObject.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface must be valid RMI-IIOP remote interface.Error in bean FolderMI_PortTypeBean: The business method folderMI does not throw java.rmi.RemoteException. Business methods of the remote interface must throw java.rmi.RemoteException.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: No corresponding business method in the bean class jps.FolderMI_PortTypeBean was found for method folderMI.; nested exception is: com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='com.sap.engine.services.ejb.exceptions.deployment.EJBDeploymentException: Incorrect application sap.com/Jps_Ear:Bean FolderMI_PortTypeBean: the return type of a create method in the session bean home interface must be the session bean's remote interface type. EJB specification 7.10.6.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface does not extend javax.ejb.EJBObject. The remote interfaces must extend javax.ejb.EJBObject.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface must be valid RMI-IIOP remote interface.Error in bean FolderMI_PortTypeBean: The business method folderMI does not throw java.rmi.RemoteException. Business methods of the remote interface must throw java.rmi.RemoteException.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: No corresponding business method in the bean class jps.FolderMI_PortTypeBean was found for method folderMI.

      at com.sap.engine.services.ejb.deploy.verifier.Verifier.check(Verifier.java:66)

      at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:253)

      at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2142)

      at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:606)

      at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:318)

      at com.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:307)

      at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:292)

      at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:326)

      at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:3119)

      at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:522)

      at com.sap.engine.services.deploy.server.DeployServiceImplp4_Skel.dispatch(DeployServiceImplp4_Skel.java:1555)

      at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:304)

      at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:193)

      at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:122)

      at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

      at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

      at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

      at java.security.AccessController.doPrivileged(Native Method)

      at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)

      at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

      ', Arguments: []--> : Can't find resource for bundle java.util.PropertyResourceBundle, key com.sap.engine.services.ejb.exceptions.deployment.EJBDeploymentException: Incorrect application sap.com/Jps_Ear:Bean FolderMI_PortTypeBean: the return type of a create method in the session bean home interface must be the session bean's remote interface type. EJB specification 7.10.6.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface does not extend javax.ejb.EJBObject. The remote interfaces must extend javax.ejb.EJBObject.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: the remote interface must be valid RMI-IIOP remote interface.Error in bean FolderMI_PortTypeBean: The business method folderMI does not throw java.rmi.RemoteException. Business methods of the remote interface must throw java.rmi.RemoteException.Error in the remote interface jps.FolderMI_PortType of bean FolderMI_PortTypeBean: No corresponding business method in the bean class jps.FolderMI_PortTypeBean was found for method folderMI.

      at com.sap.engine.services.ejb.deploy.verifier.Verifier.check(Verifier.java:66)

      at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:253)

      at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2142)

      at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:606)

      at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:318)

      at com.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:307)

      at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:292)

      at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:326)

      at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:3119)

      at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:522)

      at com.sap.engine.services.deploy.server.DeployServiceImplp4_Skel.dispatch(DeployServiceImplp4_Skel.java:1555)

      at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:304)

      at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:193)

      at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:122)

      at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

      at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

      at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

      at java.security.AccessController.doPrivileged(Native Method)

      at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)

      at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

      (message ID: com.sap.sdm.serverext.servertype.inqmy.extern.EngineApplOnlineDeployerImpl.performAction(DeploymentActionTypes).REMEXC)

      Deployment exception : The deployment of at least one item aborted

      =======================

      Which says that my JPS_EJB.jar file is not properly build.

      The error meant to say it is a Bean Problem: No interfaces classes found .

      Thanks