Bonjour j'ai un petit problème pour relier ma jsp à mon ejb.
Voici les déclarations qui me posent problème dans ma page jsp:
j'inclus tous les packages dont j'ai besoin (com.GPI.EJB.*....) et lorsque j'appelle m fonction getMessage (voir plus bas) j'ai l'erreur suivante:"la méthode getMessage(java.lang.String) n'est pas reconnue pour le type HelloEJB...pourtant je l'ai bien déclarée dedans...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <% HelloEJBHome helloWorldHome = (HelloEJBHome) javax.rmi.PortableRemoteObject.narrow(object, HelloEJBHome.class); %> <% HelloEJB helloWorld = (HelloEJB)helloWorldHome.create(); %> <% String message = helloWorld.getMessage("Hello world"); %>
Voici mes ejb:
remote:
home:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 package com.GPI.EJB public interface HelloEJB extends javax.ejb.EJBObject { public java.lang.String getMessage(String Message) throws java.rmi.RemoteException; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 package com.GPI.EJB public interface HelloEJBHome extends javax.ejb.EJBHome { public com.webcomputer.EJB.HelloEJB create() throws javax.ejb.CreateException, java.rmi.RemoteException; }
bean:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 package com.GPI.EJB; public class HelloEJBBean implements javax.ejb.SessionBean { private javax.ejb.SessionContext mySessionCtx; public javax.ejb.SessionContext getSessionContext() { return mySessionCtx; } public void setSessionContext(javax.ejb.SessionContext ctx) { mySessionCtx = Ctx; } public void ejbCreate() throws javax.ejb.CreateException {} public void ejbActivate() {} public void ejbPassivate() {} public void ejbRemove() {} public String getMessage(String Message) { return Message; } }
ejb-jar.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems. Inc.//DTD Web Application 2.2//EN""http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> <ejb-jar id="ejb-jar-ID"> <display-name>GPIEJB</display-name> <enterprise-beans> <session id="HelloEJB"> <ejb-name>HelloEJB</ejb-name> <home>com.GPI.EJB.HelloEJBHome</home> <remote>com.GPI.EJB.HelloEJB</remote> <ejb-class>com.GPI.EJB.HelloEJBBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> </session> </entreprise-beans> <ejb-jar>
Partager