on 11-21-2005 9:36 AM
Hi
I have developed a simple "hello World" EJB program and created a .jar (EJB archive). Next I have created .ear(Application archive) in a separate project and added the .jar file.
Now how and where I will write the application client( that will contain main() )and deploy and run the application which will show Hello world from the EJB .
Please help
Thanks in advance
Ananda
hello ananda,
you have to create a web application for your client then.
try writing an HTTPServlet that will create your EJB
instance and invoke a method defined in your EJB thru the
interface. deploy your servlet and access it thru your
browser.
here's a link to a code sample for a web client.
http://java.sun.com/j2ee/1.4/docs/tutorial/doc/EJB5.html
regards
jo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
hello ananda,
the answer was in the link already.
here's the application client side code sample.
http://java.sun.com/j2ee/1.4/docs/tutorial/doc/EJB4.html
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
public class TestClient {
public static void main(String[] args) {
try {
Context initial = new InitialContext();
Context myEnv =
(Context)initial.lookup("java:comp/env");
//lookup for you interface
Object objref = myEnv.lookup("ejb/TestEJB");
//narrow to your Home interface
MyEJBHome home =
(MyEJBHome )PortableRemoteObject.narrow(objref,
MyEJBHome.class);
//create your enterprise bean
MyEnterpriseBean entBean = home.create();
//invoke your business methods as defined in your
//enterprise bean interface
entBean.businessMethod();
//e.g. if you have a sayHello():String method
String resul = entBean.sayHello();
System.out.println("From My Ent EJB:" + resul);
System.exit(0);
} catch (Exception ex) {
System.err.println("Caught an unexpected exception!");
ex.printStackTrace();
}
}
}
hello anandra,
the answer is also in the link.
The MyEnterpriseBean, MyEJBHome, TestEJB and TestClient
are just sample names. Change this to your actual
interfaces names.
You specify this reference in deploytool as follows.
- In the tree, select TestClient.
- Select the EJB Ref's tab and click Add.
- In the Coded Name field, enter ejb/TestEJB.
- In the EJB Type field, select Session.
- In the Interfaces field, select Remote.
- In the Home Interface field enter, MyEJBHome.
dont forget the packge name as well.
- In the JNDI Name field, select MyEnterpriseBean.
- Click OK
Thanks for some hints.I still have some doubts
1.Is this TestClent program is a plain java project ?
2.After TestClent program is written what exactly the steps should I follow ?
3.When I opened deploy tool what steps I have to follow to get the TestClient in the tree and run it.
4. what should be written in the <jbdi-name> tag inside ejb-j2ee-engine.xml file.
5.From where TestClient program is executed ?
Thanks
ananda
hello ananda,
>1.Is this TestClent program is a plain java project ?
i assume that you're already familiar with java.
the code line i posted for TestClient is where your main
method is. Copy those lines and save into a file named
TestClient.java, then compile it. (i think i don't have
to elaborate how to do this).
>2.After TestClent program is written what exactly the
>steps should I follow ?
when you have compiled your ejb interfaces i.e. your
enterprise bean, and your remote interface implementations
you have to deploy them to your j2ee engine. you have to
consult to your deploytool how to do this. are you using
any wizard for deployment or you're doing it manually?
>3.When I opened deploy tool what steps I have to follow
>to get the TestClient in the tree and run it.
the tree depends on your deploytool.
you only have to deploy it. you can't run it anyway.
it will be utilized by your client application instead.
>4. what should be written in the <jbdi-name> tag inside
>ejb-j2ee-engine.xml file.
<jbdi-name>? are you referring to jndi-name?
it should be your enterprise bean name...
>5.From where TestClient program is executed ?
from your pc...
i would suggest that you should go through the tutorial
article which i posted on my formal links. this will
give you an idea how...
regards
jo
hi jo.
i am acutally working on this with Ananda (from opposite sides of the globe - the miracles of globalization!). i am finding your replies very helpful, but let me give you some more context. Ananda and I are pretty good with Java and we are reasonably good with servlet/jsp and EJB essentials. however, neither of us has any experience with J2EE application clients (as you can probably tell!). i have read the Sun tutorial sections you cited (I have the hard copy and also have the Sun app server installed, but just haven't had time to try the Tutorial exercise on my own.) But the key thing is, we're trying to do this in SAP, using the SAP DeployTool. Ananda and I have also read through the sections in SAP Help on writing a J2EE client (the sample program they give is pretty much same as in the Sun Tutorial) and on using the DeployTool. Unfortunately, as with much of the SAP Library, the entries are sometimes suggestive, sometimes obscure, and in the end don't provide a step-by-step recipe that we can follow. so we're fumbling and not yet successful in using the SAP DeployTool to deploy our app client. That's the context. Do you have any experience specifically with the SAP DeployTool?
hello randy, ananda,
okay, i now have an idea on your situation.
SAP deploytool is not generally used by developers in
deploying the applications they created. In fact, the
Netweaver Developer Studio has these tools already
available for you, e.g. generation of EJBs, assembling
and packagig of your EAR files, as well as deployment
of your archives to specific J2EE engines.
Are you using Netweaver Developer Studio? Or you are
using other development tools?
I think, SAP deploytool doesn't differ that much with
other J2EE deploytool. However, it has some extensions
to support Software Development Archive(sda) & Software
Component Archive(sca). Here's the reference related to
SAP Deploy Tool.
http://help.sap.com/saphelp_webas630/helpdata/en/9d/24f63def83c452e10000000a114084/content.htm
I will try to look over my notes if I have some visuals
that I could share to you related to this matter.
regards
jo
User | Count |
---|---|
84 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.