The problem you might get is attempting to store an javax.ejb.Handle.

There have been problems with class cast exceptions after redeploying a web
application; this changes class loader and causes much trouble.

----- Original Message -----
From: "Alex Loubyansky" <[EMAIL PROTECTED]>
To: "'Howard M. Lewis Ship'" <[EMAIL PROTECTED]>
Cc: "'Tapestry Developer'" <[EMAIL PROTECTED]>
Sent: Wednesday, July 03, 2002 4:59 AM
Subject: RE: [Tapestry-developer] Remote EJB interface as persistent
property


> Yes, in my page class Catalog is a persistent property and remote
interface.
> So, it's the problem! Am I right?
> It seems to me in earlier version of VLib tutorial it was allowed, wasn't
> it?
>
> Sorry, can't test it now.
>
> Thank you very much!
>
> alex
>
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]]On Behalf Of
> > Howard M. Lewis Ship
> > Sent: Wednesday, July 03, 2002 5:08 PM
> > To: [EMAIL PROTECTED]
> > Cc: 'Tapestry Developer'
> > Subject: Re: [Tapestry-developer] Remote EJB interface as persistent
> > property
> >
> >
> > Tapestry automatically converts persistent page properties
> > that are EJB
> > references into EJB handles for storage.  The down side of
> > this is that you
> > can't store an EJB handle as a persistent page property.
> > Could this be the
> > case?
> >
> > ----- Original Message -----
> > From: "Alex Loubyansky" <[EMAIL PROTECTED]>
> > To: "'Howard M. Lewis Ship'" <[EMAIL PROTECTED]>
> > Cc: "'Tapestry Developer'" <[EMAIL PROTECTED]>
> > Sent: Wednesday, July 03, 2002 2:55 AM
> > Subject: RE: [Tapestry-developer] Remote EJB interface as persistent
> > property
> >
> >
> > > Hello Howard,
> > >
> > > at last I tasted 2.0.5, though not exhaustively. I ran my
> > old app I had
> > > problem with.
> > >
> > > I haven't seen ClassCastException but I got "Unable to set property
> > catalog
> > > of component CategoryManager to
> > tracker/ejb/Catalog:Stateless." This isn't
> > > changed.
> > > Environment: JBoss-3.1.0alpha(yes, not release...), Catalina-4.0.2,
> > > JDK-1.4.0 (maybe, this is potential problem), Tapestry-2.0.5.
> > >
> > > Maybe, I misuse the framework as I don't see others
> > complaining about the
> > > issue. Sorry, I am now in a strict schedule and can't
> > research it. If I
> > have
> > > time, I'll try to narrow the code causing the problem and
> > let you know.
> > >
> > > Good luck!
> > >
> > > Here is the exception:
> > > net.sf.tapestry.record.RollbackException
> > > Unable to set property catalog of component CategoryManager to
> > > tracker/ejb/Catalog:Stateless.
> > > componentId: CategoryManager
> > > newValue: tracker/ejb/Catalog:Stateless
> > > propertyName: catalog
> > >
> > > net.sf.tapestry.util.DynamicInvocationException
> > > Could not invoke method getCatalog on
> > >
> > com.imedia.tracker.web.pages.CategoryManager@381a53[CategoryManager].
> > >
> > > java.lang.IllegalArgumentException
> > > argument type mismatch
> > > Stack Trace:
> > > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > >
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> > orImpl.java:39
> > > )
> > >
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> > odAccessorImpl
> > > .java:25)
> > > java.lang.reflect.Method.invoke(Method.java:324)
> > >
> > net.sf.tapestry.util.prop.PropertyAccessor.set(PropertyAccesso
> > r.java:168)
> > >
> > net.sf.tapestry.util.prop.PropertyHelper.set(PropertyHelper.java:608)
> > > net.sf.tapestry.record.PageRecorder.rollback(PageRecorder.java:228)
> > > net.sf.tapestry.engine.RequestCycle.getPage(RequestCycle.java:246)
> > > net.sf.tapestry.engine.PageService.service(PageService.java:84)
> > >
> > net.sf.tapestry.engine.AbstractEngine.service(AbstractEngine.java:747)
> > >
> > net.sf.tapestry.ApplicationServlet.doService(ApplicationServle
> > t.java:198)
> > >
> > net.sf.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:163)
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> > >
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> > er(Application
> > > FilterChain.java:247)
> > >
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> > cationFilterCh
> > > ain.java:193)
> > >
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> > rapperValve.ja
> > > va:243)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 66)
> > >
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> > ine.java:472)
> > >
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> > >
> > org.apache.catalina.core.StandardContextValve.invoke(StandardC
> > ontextValve.ja
> > > va:190)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 66)
> > >
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(Aut
> > henticatorBase
> > > .java:528)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 64)
> > >
> > org.apache.catalina.valves.CertificatesValve.invoke(Certificat
> > esValve.java:2
> > > 46)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 64)
> > >
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> > ine.java:472)
> > >
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> > >
> > org.apache.catalina.core.StandardContext.invoke(StandardContex
> > t.java:2343)
> > >
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> > Valve.java:180
> > > )
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 66)
> > >
> > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
> > spatcherValve.
> > > java:170)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 64)
> > >
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> > Valve.java:170
> > > )
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 64)
> > >
> > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValv
> > e.java:468)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 64)
> > >
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> > ine.java:472)
> > >
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> > >
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> > gineValve.java
> > > :174)
> > >
> > org.apache.catalina.core.StandardPipeline.invokeNext(StandardP
> > ipeline.java:5
> > > 66)
> > >
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> > ine.java:472)
> > >
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> > >
> > org.apache.catalina.connector.http.HttpProcessor.process(HttpP
> > rocessor.java:
> > > 1012)
> > >
> > org.apache.catalina.connector.http.HttpProcessor.run(HttpProce
> > ssor.java:1107
> > > )
> > > java.lang.Thread.run(Thread.java:536)
> > >
> > >
> > > > -----Original Message-----
> > > > From: Howard M. Lewis Ship [mailto:[EMAIL PROTECTED]]
> > > > Sent: Wednesday, June 26, 2002 5:21 PM
> > > > To: [EMAIL PROTECTED]
> > > > Cc: 'Tapestry Developer'
> > > > Subject: Re: [Tapestry-developer] Remote EJB interface as
> > persistent
> > > > property
> > > >
> > > >
> > > > Have you downloaded 2.0.5?  It has built-in JBoss 3.0.0
> > > > support and works
> > > > well.
> > > >
> > > > ----- Original Message -----
> > > > From: "Alex Loubyansky" <[EMAIL PROTECTED]>
> > > > To: <[EMAIL PROTECTED]>
> > > > Cc: "'Tapestry Developer'"
> > <[EMAIL PROTECTED]>
> > > > Sent: Thursday, May 23, 2002 10:43 PM
> > > > Subject: RE: [Tapestry-developer] Remote EJB interface as
> > persistent
> > > > property
> > > >
> > > >
> > > > >   Hello, Howard.
> > > > >
> > > > >   I won't stop using Tapestrty. But for now I just don't
> > > > have time to get
> > > > > into its bowels. The semantics is just cool, but I couldn't
> > > > get it working
> > > > > stably with JBoss 3.x. Mention one more about the
> > problem: stateless
> > > > session
> > > > > bean's remote interface as persistent property. I tried
> > different
> > > > packaging,
> > > > > making the variable as synthetic and still there were
> > > > problems. May be I
> > > > did
> > > > > something wrong but I use VLib as an example.
> > > > >
> > > > >   Thank you for trying to help. Sure, if I have some
> > > > findings I'll share
> > > > > with the list.
> > > > >
> > > > > alex
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> > > > > > Sent: Thursday, May 23, 2002 10:55 PM
> > > > > > To: [EMAIL PROTECTED]
> > > > > > Cc: Tapestry Developer
> > > > > > Subject: RE: [Tapestry-developer] Remote EJB interface as
> > > > persistent
> > > > > > property
> > > > > >
> > > > > >
> > > > > > I'm not aware of any weakness in Tapestry that wouldn't
> > > > > > affect Struts as well.  When you redeploy a Struts-based
> > > > > > WAR, you'll still be getting a new class loader, and
> > > > > > some data you've stuffed into the HttpSession will no
> > > > > > longer be usable.
> > > > > >
> > > > > > If you find otherwise, please check back with your
> > > > > > findings.
> > > > > >
> > > > > > --
> > > > > > [EMAIL PROTECTED]
> > > > > >
> > > > > > http://tapestry.sf.net
> > > > > > >   Well, I've come to conclusion that Tapestrty-2.0.1 and
> > > > > > JBoss-3.x/Tomcat
> > > > > > > isn't compatible for now (I tried JBoss-3.0-RC3 and latest
> > > > > > 3.1.0alpha) on
> > > > > > > Win2000 with j2sdk-1.4.0.
> > > > > > >   By that I mean working with EJB's.
> > > > > > >
> > > > > > >   Please, if someone got it working let me know. For now I
> > > > > > don't see another
> > > > > > > choice like get back to struts.
> > > > > > >
> > > > > > > pity, pity, pity....
> > > > > > >
> > > > > > > alex
> > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: [EMAIL PROTECTED]
> > > > > > > > [mailto:[EMAIL PROTECTED]]On
> > > > > > Behalf Of
> > > > > > > > [EMAIL PROTECTED]
> > > > > > > > Sent: Thursday, May 23, 2002 4:46 PM
> > > > > > > > To: [EMAIL PROTECTED]
> > > > > > > > Cc: Tapestry Developer
> > > > > > > > Subject: RE: [Tapestry-developer] Remote EJB interface as
> > > > > > persistent
> > > > > > > > property
> > > > > > > >
> > > > > > > >
> > > > > > > > I just tried this using Jetty/JBoss and the Vlib.ear.
> > > > > > > >
> > > > > > > > I couldn't reproduce your problem because redeploying
> > > > > > > > the Vlib.ear invalidated my session.  This is a very
> > > > > > > > sensible thing to do since it sidesteps class loader
> > > > > > > > issues.  I'm pretty sure its the standard approach taken
> > > > > > > > by most application servers (including WebLogic).
> > > > > > > >
> > > > > > > > I'm sorry that with my limited resources I can't
> > > > > > > > validate Tapestry against more configurations of servlet
> > > > > > > > container and application server.  This is an area where
> > > > > > > > the help of the community is needed.
> > > > > > > >
> > > > > > > > --
> > > > > > > > [EMAIL PROTECTED]
> > > > > > > >
> > > > > > > > http://tapestry.sf.net
> > > > > > > > >   I think I just have no other choice :) I have been
> > > > > > > > struggling two days
> > > > > > > > > with the problem. I'll try to run VLib and let you know.
> > > > > > > > >
> > > > > > > > >   Thank you for the help, Howard.
> > > > > > > > >
> > > > > > > > > alex
> > > > > > > > >
> > > > > > > > > > -----Original Message-----
> > > > > > > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> > > > > > > > > > Sent: Thursday, May 23, 2002 4:24 PM
> > > > > > > > > > To: [EMAIL PROTECTED]
> > > > > > > > > > Cc: Tapestry Developer
> > > > > > > > > > Subject: RE: [Tapestry-developer] Remote EJB
> > interface as
> > > > > > > > persistent
> > > > > > > > > > property
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Hm.  Can you deploy the Vlib in this same application
> > > > > > > > > > server configuration?
> > > > > > > > > >
> > > > > > > > > > --
> > > > > > > > > > [EMAIL PROTECTED]
> > > > > > > > > >
> > > > > > > > > > http://tapestry.sf.net
> > > > > > > > > > >   Tom,
> > > > > > > > > > >
> > > > > > > > > > >   here it is. I got back that exception again.
> > > > > > > > > > >
> > > > > > > > > > >
> > > > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > > > > > > > > > >
> > > > > > > > > >
> > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess
> > > > > > > > > > orImpl.java:39
> > > > > > > > > > > )
> > > > > > > > > > >
> > > > > > > > > >
> > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> > > > > > > > > > odAccessorImpl
> > > > > > > > > > > .java:25)
> > > > > > > > > > > java.lang.reflect.Method.invoke(Method.java:324)
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.util.prop.PropertyAccessor.set(PropertyAcc
> > > > > > > > > > essor.java:169
> > > > > > > > > > > )
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.util.prop.PropertyHelper.set(PropertyHelpe
> > > > > > > > > > r.java:586)
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.record.PageRecorder.rollback(PageRecorder.
> > > > > > > > > > java:222)
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > >
> > > > > >
> > > >
> > com.primix.tapestry.engine.RequestCycle.getPage(RequestCycle.java:257)
> > > > > > > > > > >
> > > > > > > >
> > > > > >
> > > >
> > com.primix.tapestry.engine.PageService.service(PageService.java:92)
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.engine.AbstractEngine.service(AbstractEngi
> > > > > > > > > > ne.java:706)
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.ApplicationServlet.doService(ApplicationSe
> > > > > > > > > > rvlet.java:203
> > > > > > > > > > > )
> > > > > > > > > > >
> > > > > > > > > >
> > > > com.primix.tapestry.ApplicationServlet.doGet(ApplicationServle
> > > > > > > > > > t.java:168)
> > > > > > > > > > >
> > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> > > > > > > > > > >
> > > > > > > > > > > Hope, it's enough. Further follows catalina's stack.
> > > > > > > > > > >
> > > > > > > > > > > And this is my getCatalog():
> > > > > > > > > > >   public Catalog getCatalog() {
> > > > > > > > > > >
> > > > > > > > > > >     if(catalog == null) {
> > > > > > > > > > >       MTCatalogEngine engine =
> > > > (MTCatalogEngine)getEngine();
> > > > > > > > > > >       for(int i = 0; i < 2; ++i) {
> > > > > > > > > > >         try {
> > > > > > > > > > >           CatalogHome catalogHome =
> > > > engine.getCatalogHome();
> > > > > > > > > > >           setCatalog(catalogHome.create());
> > > > > > > > > > >           break;
> > > > > > > > > > >         } catch(CreateException ce) {
> > > > > > > > > > >           throw new ApplicationRuntimeException(ce);
> > > > > > > > > > >         } catch(RemoteException re) {
> > > > > > > > > > >           engine.rmiFailure("Remote
> > exception creating
> > > > > > > > > > Catalog", re, i > 0);
> > > > > > > > > > >         }
> > > > > > > > > > >       }
> > > > > > > > > > >     }
> > > > > > > > > > >     return catalog;
> > > > > > > > > > >   }
> > > > > > > > > > >
> > > > > > > > > > > Please, any hints would greatly appreciated.
> > > > > > > > > > >
> > > > > > > > > > > TIA,
> > > > > > > > > > >
> > > > > > > > > > > alex
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > > -----Original Message-----
> > > > > > > > > > > > From:
> > [EMAIL PROTECTED]
> > > > > > > > > > > >
> > > > [mailto:[EMAIL PROTECTED]]On
> > > > > > > > > > > > Behalf Of Tom
> > > > > > > > > > > > Davies
> > > > > > > > > > > > Sent: Thursday, May 23, 2002 3:44 PM
> > > > > > > > > > > > Cc: 'Tapestry-Developer (E-mail)
> > > > > > > > > > > > Subject: Re: [Tapestry-developer] Remote EJB
> > > > interface as
> > > > > > > > > > persistent
> > > > > > > > > > > > property
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > Alex Loubyansky wrote:
> > > > > > > > > > > > >   Hi, all.
> > > > > > > > > > > > >
> > > > > > > > > > > > >   Do someone have any thoughts on what the
> > > > > > cause for this
> > > > > > > > > > > > exception could
> > > > > > > > > > > > > be?
> > > > > > > > > > > > > Name:
> > com.primix.tapestry.record.RollbackException
> > > > > > > > > > > > > Message: Unable to set property catalog
> > of component
> > > > > > > > > > > > CategoryManager to
> > > > > > > > > > > > > tracker/ejb/Catalog:Stateless.
> > > > > > > > > > > > > componentId: CategoryManager newValue:
> > > > > > > > > > tracker/ejb/Catalog:Stateless
> > > > > > > > > > > > > propertyName: catalog
> > > > > > > > > > > > >
> > > > > > > > > > > > > Name:
> > > > > > com.primix.tapestry.util.DynamicInvocationException
> > > > > > > > > > > > > Message: Could not invoke method getCatalog on
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > >
> > > > > > > >
> > > > > >
> > > >
> > com.imedia.tracker.web.pages.CategoryManager@45bb9d[CategoryManager].
> > > > > > > > > > > > > Name: java.lang.IllegalArgumentException
> > > > > > > > > > > > > Message: argument type mismatch Trace:
> > > > > > > > > > > > >
> > > > > > > > > > > > >   Catalog is a remote stateless session bean. I
> > > > > > handle it
> > > > > > > > > > > > like IBookQuery in
> > > > > > > > > > > > > VLib tutorial. Please, if anyone have
> > some thoughts
> > > > > > > > let me know.
> > > > > > > > > > > >
> > > > > > > > > > > > What're the first few stack frames, and what's the
> > > > > > > > signature of
> > > > > > > > > > > > getCatalog()?
> > > > > > > > > > > >
> > > > > > > > > > > > Tom
> > >
> >
> >
> >
> > -------------------------------------------------------
> > This sf.net email is sponsored by:ThinkGeek
> > No, I will not fix your computer.
> > http://thinkgeek.com/sf
> > _______________________________________________
> > Tapestry-developer mailing list
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/tapestry-developer
>
>
>
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> No, I will not fix your computer.
> http://thinkgeek.com/sf
> _______________________________________________
> Tapestry-developer mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/tapestry-developer



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Bringing you mounds of caffeinated joy.
http://thinkgeek.com/sf
_______________________________________________
Tapestry-developer mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/tapestry-developer

Reply via email to