Re: Re: Re: Re: How to change remote JNDI-name in Jonas
"Guillaume Sauthier (OW2)" <[email protected]> Tue, 9 Aug 2011 11:55:45 +0200
| Newsgroups | gmane.comp.java.objectweb.jonas |
|---|---|
| Message-ID | <CAG1yf3NGsU_xSUq-Po_R=g_8FagTO+SZM0UrAHiqtnBcZbkF3g@mail.gmail.com> |
--0016e6d646974c716504aa0f91aa Content-Type: text/plain; charset=ISO-8859-1 You should also remove your mapped names (don't needed anymore because you rely on the container to find the right interface for you). --G 2011/8/9 Stefaan Somers <[email protected]> > Hello, > > I'v tried that too, but it also injects the remote-bean then instead > of the local-bean. > > Greetings, > > Stefaan Somers > > On 9 August 2011 11:04, Guillaume Sauthier (OW2) > <[email protected]> wrote: > > Can't you change your Calculator.java to something like this: > > > > It's much more easier to read :) > > > > /** > > * Session Bean implementation class Calculator > > */ > > @Stateless > > public class Calculator implements CalculatorRemote, CalculatorLocal { > > > > @EJB > > private ParametersLocal params; > > > > > > /** > > * Default constructor. > > */ > > public Calculator() { > > > > } > > > > @Override > > public String returnMessage() { > > result = parameters.getParameter(); > > return "It's all being calculated :" + result; > > } > > > > } > > > > 2011/8/9 Stefaan Somers <[email protected]> > >> > >> Hi Guillaume, > >> Thnks for responding. I'm already banging my head for a few days with > >> this problem. So any help would be most welcome. > >> > >> I've included a sample project. For the Parameters-bean I use the > >> mappedName parameter, since I need to give it a unique-name. > >> > >> If I try to get the Local Parameters-bean with the Calculator-bean, it > >> gives me the following exception : > >> > >> java.lang.ClassCastException: $Proxy63 cannot be cast to > >> be.sso.test.ParametersLocal > >> at > >> > be.sso.test.Calculator.original$EasyBeans$returnMessage(Calculator.java:34) > >> at > >> > org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.EasyBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unknown > >> Source) > >> at > >> > org.ow2.easybeans.transaction.interceptors.CMTRequiredTransactionInterceptor.intercept(CMTRequiredTransactionInterceptor.java:110) > >> at > >> > org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.EasyBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unknown > >> Source) > >> at > >> > org.ow2.jonas.jndi.interceptors.impl.easybeans.ResourceCheckerInterceptor.intercept(ResourceCheckerInterceptor.java:103) > >> at > >> > org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.EasyBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unknown > >> Source) > >> at > >> > org.ow2.jonas.ejb.easybeans.JOnASENCInterceptor.intercept(JOnASENCInterceptor.java:67) > >> at > >> > org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.EasyBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unknown > >> Source) > >> at be.sso.test.Calculator.returnMessage(Calculator.java) > >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >> at > >> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > >> at > >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > >> at java.lang.reflect.Method.invoke(Method.java:597) > >> at > >> > org.ow2.easybeans.container.session.stateless.StatelessSessionFactory.localCall(StatelessSessionFactory.java:161) > >> at > >> > org.ow2.easybeans.container.session.SessionFactory.rpcInvoke(SessionFactory.java:237) > >> at > >> > org.ow2.easybeans.rpc.rmi.server.RMIServerRPCImpl.getEJBResponse(RMIServerRPCImpl.java:106) > >> at > >> > org.ow2.easybeans.rpc.rmi.client.RMIClientRPC.sendEJBRequest(RMIClientRPC.java:105) > >> at > >> > org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(ClientRPCInvocationHandler.java:195) > >> at > >> > org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(ClientRPCInvocationHandler.java:111) > >> at $Proxy62.returnMessage(Unknown Source) > >> at > be.sso.servlet.CalculateServlet.doGet(CalculateServlet.java:40) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > >> at > >> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > >> at > >> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > >> at > >> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > >> at > >> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > >> at > >> > org.ow2.jonas.web.tomcat6.CheckOpenResourcesValve.invoke(CheckOpenResourcesValve.java:73) > >> at > >> > org.ow2.jonas.web.tomcat6.tx.TransactionValve.invoke(TransactionValve.java:90) > >> at > >> > org.ow2.jonas.web.tomcat6.ResetAuthenticationValve.invoke(ResetAuthenticationValve.java:95) > >> at > >> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) > >> at > >> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > >> at > >> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > >> at > >> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) > >> at > >> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) > >> at > >> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) > >> at > >> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) > >> at java.lang.Thread.run(Thread.java:619) > >> > >> > >> > >> On 9 August 2011 10:45, Guillaume Sauthier (OW2) > >> <[email protected]> wrote: > >> > Can't you rely on container's injection (@EJB) ? > >> > --G > >> > > >> > 2011/8/9 Stefaan Somers <[email protected]> > >> >> > >> >> Hi all, > >> >> > >> >> I need to change the remote jndi-name of a Stateless Session Bean . > >> >> Default the naming for jonas is : > >> >> > >> >> SessionBean.class.getName() > >> >> + "_" + SessionBeanInterface.class.getName() + "@Remote" > >> >> > >> >> How can I change this. If I add the attribute mappedName in the > >> >> @Stateless-annotation, I cannot get to the Local Interface anymore. > >> >> And I need to be able to get to both. > >> >> > >> >> Greetings, > >> >> > >> >> Stefaan Somers > >> > > >> > > > > > > --0016e6d646974c716504aa0f91aa Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable You should also remove your mapped names (don't needed anymore because = you rely on the container to find the right interface for you).<br><br>--G<= br><br><div class=3D"gmail_quote">2011/8/9 Stefaan Somers <span dir=3D"ltr"= ><<a href=3D"mailto:[email protected]">[email protected]</= a>></span><br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex;">Hello,<br> <br> I'v tried that too, but it also injects the remote-bean then instead<br= > of the local-bean.<br> <br> Greetings,<br> <br> Stefaan Somers<br> <br> On 9 August 2011 11:04, Guillaume Sauthier (OW2)<br> <div><div></div><div class=3D"h5"><<a href=3D"mailto:guillaume.sauthier@= ow2.org">[email protected]</a>> wrote:<br> > Can't you change your Calculator.java to something like this:<br> ><br> > It's much more easier to read :)<br> ><br> > /**<br> > =A0* Session Bean implementation class Calculator<br> > =A0*/<br> > @Stateless<br> > public class Calculator implements CalculatorRemote, CalculatorLocal {= <br> ><br> > =A0 @EJB<br> > =A0 private ParametersLocal params;<br> ><br> ><br> > =A0=A0=A0 /**<br> > =A0=A0=A0=A0 * Default constructor.<br> > =A0=A0=A0=A0 */<br> > =A0=A0=A0 public Calculator() {<br> ><br> > =A0=A0=A0 }<br> ><br> > =A0=A0=A0 @Override<br> > =A0=A0=A0 public String returnMessage() {<br> > =A0=A0=A0 =A0=A0=A0 result =3D parameters.getParameter();<br> > =A0=A0=A0 =A0=A0=A0 return "It's all being calculated :"= + result;<br> > =A0=A0=A0 }<br> ><br> > }<br> ><br> > 2011/8/9 Stefaan Somers <<a href=3D"mailto:[email protected]= ">[email protected]</a>><br> >><br> >> Hi Guillaume,<br> >> Thnks for responding. I'm already banging my head for a few da= ys with<br> >> this problem. So any help would be most welcome.<br> >><br> >> I've included a sample project. For the Parameters-bean I use = the<br> >> mappedName parameter, since I need to give it a unique-name.<br> >><br> >> If I try to get the Local Parameters-bean with the Calculator-bean= , it<br> >> gives me the following exception :<br> >><br> >> java.lang.ClassCastException: $Proxy63 cannot be cast to<br> >> be.sso.test.ParametersLocal<br> >> =A0 =A0 =A0 =A0at<br> >> be.sso.test.Calculator.original$EasyBeans$returnMessage(Calculator= .java:34)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.Eas= yBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unkn= own<br> >> Source)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.transaction.interceptors.CMTRequiredTransactionI= nterceptor.intercept(CMTRequiredTransactionInterceptor.java:110)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.Eas= yBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unkn= own<br> >> Source)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.jonas.jndi.interceptors.impl.easybeans.ResourceCheckerInte= rceptor.intercept(ResourceCheckerInterceptor.java:103)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.Eas= yBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unkn= own<br> >> Source)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.jonas.ejb.easybeans.JOnASENCInterceptor.intercept(JOnASENC= Interceptor.java:67)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.gen.invocationcontext.be.sso.test.Calculator.Eas= yBeansInvocationContextImplreturnMessageAROUNDINVOKE1942950347.proceed(Unkn= own<br> >> Source)<br> >> =A0 =A0 =A0 =A0at be.sso.test.Calculator.returnMessage(Calculator.= java)<br> >> =A0 =A0 =A0 =A0at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat= ive Method)<br> >> =A0 =A0 =A0 =A0at<br> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorIm= pl.java:39)<br> >> =A0 =A0 =A0 =A0at<br> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAc= cessorImpl.java:25)<br> >> =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597)= <br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.container.session.stateless.StatelessSessionFact= ory.localCall(StatelessSessionFactory.java:161)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.container.session.SessionFactory.rpcInvoke(Sessi= onFactory.java:237)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.rpc.rmi.server.RMIServerRPCImpl.getEJBResponse(R= MIServerRPCImpl.java:106)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.rpc.rmi.client.RMIClientRPC.sendEJBRequest(RMICl= ientRPC.java:105)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(C= lientRPCInvocationHandler.java:195)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(C= lientRPCInvocationHandler.java:111)<br> >> =A0 =A0 =A0 =A0at $Proxy62.returnMessage(Unknown Source)<br> >> =A0 =A0 =A0 =A0at be.sso.servlet.CalculateServlet.doGet(CalculateS= ervlet.java:40)<br> >> =A0 =A0 =A0 =A0at javax.servlet.http.HttpServlet.service(HttpServl= et.java:617)<br> >> =A0 =A0 =A0 =A0at javax.servlet.http.HttpServlet.service(HttpServl= et.java:717)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(A= pplicationFilterChain.java:290)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicati= onFilterChain.java:206)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapp= erValve.java:233)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.StandardContextValve.invoke(StandardConte= xtValve.java:191)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.jonas.web.tomcat6.CheckOpenResourcesValve.invoke(CheckOpen= ResourcesValve.java:73)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.jonas.web.tomcat6.tx.TransactionValve.invoke(TransactionVa= lve.java:90)<br> >> =A0 =A0 =A0 =A0at<br> >> org.ow2.jonas.web.tomcat6.ResetAuthenticationValve.invoke(ResetAut= henticationValve.java:95)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValv= e.java:127)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValv= e.java:102)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngine= Valve.java:109)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.= java:340)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.j= ava:857)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.pr= ocess(Http11Protocol.java:588)<br> >> =A0 =A0 =A0 =A0at<br> >> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java= :489)<br> >> =A0 =A0 =A0 =A0at java.lang.Thread.run(Thread.java:619)<br> >><br> >><br> >><br> >> On 9 August 2011 10:45, Guillaume Sauthier (OW2)<br> >> <<a href=3D"mailto:[email protected]">guillaume.sauthi= [email protected]</a>> wrote:<br> >> > Can't you rely on container's injection (@EJB) ?<br> >> > --G<br> >> ><br> >> > 2011/8/9 Stefaan Somers <<a href=3D"mailto:stefaan.somers@= gmail.com">[email protected]</a>><br> >> >><br> >> >> Hi all,<br> >> >><br> >> >> I need to change the remote jndi-name of a Stateless Sess= ion Bean .<br> >> >> Default the naming for jonas is :<br> >> >><br> >> >> SessionBean.class.getName()<br> >> >> + "_" + SessionBeanInterface.class.getName() + = "@Remote"<br> >> >><br> >> >> How can I change this. If I add the attribute mappedName = in the<br> >> >> @Stateless-annotation, I cannot get to the Local Interfac= e anymore.<br> >> >> And I need to be able to get to both.<br> >> >><br> >> >> Greetings,<br> >> >><br> >> >> Stefaan Somers<br> >> ><br> >> ><br> ><br> ><br> </div></div></blockquote></div><br> --0016e6d646974c716504aa0f91aa--