Hi there,
I've had issues to get injection working on Glassfish but solved it, it 
is described here:

http://www.stripesframework.org/display/stripes/EJB3+with+Stripes

have you tried any of these? Is EJB Interceptor triggered ?
-m




CHEVILLON Paulin (Stagiaire IGTL) wrote:
>
> Does anyone have an idea about this problem?
>
>  
>
> Thanks a lot
>
> PC
>
>  
>
> -----Message d'origine-----
> *De :* CHEVILLON Paulin (Stagiaire IGTL) 
> [mailto:ext.stagiaire.paulin.chevil...@sncf.fr]
> *Envoyé :* mercredi 27 mai 2009 11:12
> *À :* stripes-users@lists.sourceforge.net
> *Objet :* [Stripes-users] EJB3 injection problem
>
>  
>
> Hello,
>
>  
>
> I've kind of problem with EJB3 injection using stripes. I'm new to 
> this framework, and I have to mention that I'm neither familiar with 
> Struts use. My JEE web experience comes from Seam use only. So it's 
> strongly possible I'm missing something in this stripes use case.
>
>  
>
> Environment description:
>
> - JDK 1.6
>
> - JBoss 5.0.1 GA (for JVM 1.6)
>
>  
>
> Project structure:
>
> --> EAR
>
>     --> WAR : contains stripes ActionBeans, jsp, etc
>
>     --> EJB-JAR : contains EJB 3.0 both entity & business Beans
>
>  
>
> Problem:
>
> I want to access a Stateless Bean from a Stripes ActionBean. I 
> followed the documentation to use EJB3 Interceptor, but no EJB 
> instance is injected into my ActionBean EJB field (field remains 
> null). It seems to have no JNDI resolution problem (verified with the 
> JMX-console in JBoss).
>
>  
>
> So here is my code, if someone can help...
>
>  
>
> Thanks,
>
> Regards,
>
> PC
>
>  
>
>  
>
> web.xml:
>
> <filter>
>
>             <display-name>Stripes Filter</display-name>
>
>             <filter-name>StripesFilter</filter-name>
>
>             
> <filter-class>net.sourceforge.stripes.controller.StripesFilter</filter-class>
>
>             <init-param>
>
>                         <param-name>Interceptor.Classes</param-name>
>
>                         <param-value>
>
>                                    com.samaxes.stripejb3.EJBInterceptor
>
>                         </param-value>
>
>             </init-param>
>
>             <init-param>
>
>                         <param-name>ActionResolver.Packages</param-name>
>
>                         
> <param-value>com.sncf.igtl.re.promet.server.admin</param-value>
>
>             </init-param>   
>
> </filter>
>
>  
>
> index.jsp:
>
>  
>
> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
>
> <%@ taglib prefix="stripes" 
> uri="http://stripes.sourceforge.net/stripes.tld"%>
>
> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
>
> <html>
>
> <head>
>
>             <title>My First Stripe</title>
>
>                         <style type="text/css">
>
>                                    input.error { background-color: 
> yellow; }
>
>                         </style>
>
>             </head>
>
>             <body>
>
>             <h1>Stripes Test</h1>
>
>  
>
>   
>
>             <stripes:form 
> beanclass="com.sncf.igtl.re.promet.server.admin.TestActionBean">
>
>                         <c:forEach items="${test.list}" var="number" 
> varStatus="loop">
>
>                                    <p>${number}</p>
>
>                         </c:forEach>
>
>                         <stripes:submit name="refresh" value="Refresh 
> list"/>
>
>             </stripes:form>
>
>             </body>
>
> </html>
>
>  
>
>  
>
> TestActionBean.java:
>
>  
>
> package com.sncf.igtl.re.promet.server.admin;
>
>  
>
> import java.util.List;
>
>  
>
> import net.sourceforge.stripes.action.ActionBean;
>
> import net.sourceforge.stripes.action.ActionBeanContext;
>
> import net.sourceforge.stripes.action.DefaultHandler;
>
> import net.sourceforge.stripes.action.ForwardResolution;
>
> import net.sourceforge.stripes.action.Resolution;
>
>  
>
> import com.samaxes.stripejb3.EJBBean;
>
> import com.sncf.igtl.re.promet.server.ejb3.admin.AdminManagerLocal;
>
>  
>
> public class TestActionBean implements ActionBean {
>
>            
>
>             public AdminManagerLocal adminManager;
>
>  
>
>             private ActionBeanContext context;
>
>            
>
>             private List<String> list;
>
>            
>
>             public TestActionBean() {}
>
>            
>
>             @EJBBean("adminManager")
>
>             public void setAdminManager(AdminManagerLocal 
> adminManagerLocal) {
>
>                 this.adminManager = adminManagerLocal;
>
>             }
>
>            
>
>             @DefaultHandler
>
>     public Resolution refresh() {
>
>         list = adminManager.getMarcheList();
>
>         return new ForwardResolution("/index.jsp");
>
>     }
>
>  
>
>             @Override public ActionBeanContext getContext() { return 
> context; }
>
>             @Override public void setContext(ActionBeanContext 
> context) { this.context = context; }
>
>            
>
>             public void setList(List<String> list) {
>
>                         this.list = list;
>
>             }
>
>             public List<String> getList() {
>
>                         list = adminManager.getMarcheList();
>
>                         return list;
>
>             }
>
> }
>
>  
>
> EJB Local Interface :
>
>  
>
> package com.sncf.igtl.re.promet.server.ejb3.admin;
>
> import java.util.List;
>
> import javax.ejb.Local;
>
>  
>
> @Local
>
> public interface AdminManagerLocal {
>
>             List<String> getMarcheList();
>
> }
>
>  
>
> EJB Bean :
>
>  
>
> /**
>
>  * Session Bean implementation class ClientAdminManager
>
>  */
>
> @Stateless
>
> @LocalBinding(jndiBinding="adminManager")
>
> public class AdminManager implements AdminManagerLocal {
>
>  
>
>             @PersistenceContext(unitName="3RPEMF")
>
>             private EntityManager em;
>
>  
>
>             @Override
>
>             public List<String> getMarcheList() {
>
>                         List<String> list = new ArrayList<String>();
>
>                         Query q = em.createQuery("from MsgUpPogg");
>
>  
>
>                         for (int i=0; i<q.getResultList().size();i++) {
>
>                                    MsgUpPogg msg = 
> (MsgUpPogg)q.getResultList().get(i);
>
>                                    list.add(msg.getTrain().getNumber());
>
>                         }
>
>                         return list;
>
>             }          
>
>             /* ... */
>
> }
>
>  
>
>
>
> -------
> Ce message et toutes les pièces jointes sont établis à l'intention 
> exclusive de ses destinataires et sont confidentiels. L'intégrité de 
> ce message n'étant pas assurée sur Internet, la SNCF ne peut être 
> tenue responsable des altérations qui pourraient se produire sur son 
> contenu. Toute publication, utilisation, reproduction, ou diffusion, 
> même partielle, non autorisée préalablement par la SNCF, est 
> strictement interdite. Si vous n'êtes pas le destinataire de ce 
> message, merci d'en avertir immédiatement l'expéditeur et de le détruire.
> -------
> This message and any attachments are intended solely for the 
> addressees and are confidential. SNCF may not be held responsible for 
> their contents, accuracy and completeness which cannot be guaranteed 
> over the Internet. Unauthorized use, disclosure, distribution and 
> copying of this message or any part thereof is strictly prohibited. If 
> you are not the intended recipient of this message, please notify the 
> sender immediately and delete it.
>
> -------
> Ce message et toutes les pièces jointes sont établis à l'intention 
> exclusive de ses destinataires et sont confidentiels. L'intégrité de 
> ce message n'étant pas assurée sur Internet, la SNCF ne peut être 
> tenue responsable des altérations qui pourraient se produire sur son 
> contenu. Toute publication, utilisation, reproduction, ou diffusion, 
> même partielle, non autorisée préalablement par la SNCF, est 
> strictement interdite. Si vous n'êtes pas le destinataire de ce 
> message, merci d'en avertir immédiatement l'expéditeur et de le détruire.
> -------
> This message and any attachments are intended solely for the 
> addressees and are confidential. SNCF may not be held responsible for 
> their contents, accuracy and completeness which cannot be guaranteed 
> over the Internet. Unauthorized use, disclosure, distribution and 
> copying of this message or any part thereof is strictly prohibited. If 
> you are not the intended recipient of this message, please notify the 
> sender immediately and delete it.
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------
> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
> is a gathering of tech-side developers & brand creativity professionals. Meet
> the minds behind Google Creative Lab, Visual Complexity, Processing, & 
> iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
> Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
> ------------------------------------------------------------------------
>
> _______________________________________________
> Stripes-users mailing list
> Stripes-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/stripes-users
>   


------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
_______________________________________________
Stripes-users mailing list
Stripes-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/stripes-users

Reply via email to