cancel
Showing results for 
Search instead for 
Did you mean: 

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

Former Member
0 Kudos

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!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

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

Former Member
0 Kudos

Hi

Thanks Uma for your suggestion. I am working with this scenario:

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

But I have only

FolderMI_PortTypeBean.java

FolderMI_PortType.java

FolderMI_PortTypeImpl.template(is it necessary?)

FolderMI_PortTypeImpl.java

FoldernamDT_Type.java

developed by my IR(inbound message interface->java Proxy generation), i dont have local,localhome and remote.

Without these files is it possible to generate ejb.jar file. I think that is the reason for not enabling this "Build EJB Archive" in NWDS.

<b><i>NOTE:

Can you tell me is there any blog or pdf available on Java proxy scenario or can you send any pdf to my mail id:

datta.saru@gmail.com</i></b>Its very urgent!

Thanks a lot

stefan_grube
Active Contributor
0 Kudos

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

Answers (5)

Answers (5)

Former Member
0 Kudos

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

Former Member
0 Kudos

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!

Former Member
0 Kudos

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

Former Member
0 Kudos

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> 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> 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> 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

Former Member
0 Kudos

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

Former Member
0 Kudos

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

stefan_grube
Active Contributor
0 Kudos

It is not active, when the project contains errors.

Check the errors.

Stefan

Shabarish_Nair
Active Contributor
0 Kudos

refer this link :

I had the same problem which was solved ...

Former Member
0 Kudos

Hi

Firstly thanks for your prompt reply.

I followed the link proposed by you.

What are ejb candidates?

1. expanded ejb-jar.xml in the same view i.e. J2EE Explorer.

2. deleted the ejb entry from there.

-


>3. this will automatically refresh the view and will now show ejb candidates.

But its is nor refreshing automatically for me and what do you bean by ejb candidates. I did not see them. Can you help me!

Thanks

Shabarish_Nair
Active Contributor
0 Kudos

make sure everything is error free ....

the main reason for me was also unclear but then i recreated the whole thing and it worked ....