Internal Error: LoginComponent>>rememberMe:

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Internal Error: LoginComponent>>rememberMe:

Louis LaBrunda
Hi Seasiders,

I'm working on a Seaside project with a login component that contains a check-box connected to an instance var of the component.  When testing in the dev env under windows, everything works fine.  But when testing the packaged image under Linux, the login page paints fine but once a button is clicked the browser displays "Internal Error: LoginComponent>>rememberMe:".

LoginComponent>>rememberMe: is the method of my login component that receives the boolean value of whether or not the check-box is checked.  My Seaside app seems to keep functioning, as in it doesn't stop and I can get back to the same login screen but can't get past it.  The check-box is the third input element on the screen (not sure if that matters).

I'm thinking that something is missing from the packaging (a Seaside app) that maybe converts the reply from the web browser for check-boxes into a boolean (and maybe other things too).  Thanks in advance for any ideas.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To view this discussion on the web visit https://groups.google.com/d/msg/va-smalltalk/-/QHU7DPnxk0sJ.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/va-smalltalk?hl=en.
Reply | Threaded
Open this post in threaded view
|

Aw: Internal Error: LoginComponent>>rememberMe:

jtuchel
Lou,

I guess this is too obvious to mention, but did you make sure the method rememberMe: is in the packaged image?

Joachim

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To view this discussion on the web visit https://groups.google.com/d/msg/va-smalltalk/-/ZYFEcu15c6sJ.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/va-smalltalk?hl=en.
Reply | Threaded
Open this post in threaded view
|

Re: Aw: Internal Error: LoginComponent>>rememberMe:

Louis LaBrunda
Hi Joachim.

Thanks for the reply, that was indeed the problem.  I must confess that I posted the question before looking into the problem very much.  It was getting late and I wanted to get the question posted in the hope that you or Marten (given you are five hours ahead of me) would answer with some ideas before I got back to working on it today.

The root of the problem stems from the fact that the packaged likes to remove methods it doesn't think are needed.  When using the Seaside #on:of: method to connect an html input element to getter/setter methods, only the getter method is specified.  In this case #rememberMe.  When Seaside needs to set the value it assumes the setter is named the same as the getter with a colon ":" as the last character.  This goes unnoticed by the packager, so it removes the method.  If I had used #rememberMe: elsewhere it would have been included.

I added a few packaging rules of #doNotReduceSubApplicationNamed: to reduce the packaging my Seaside apps.  This was the easiest thing to do and had very little effect on the size of the packaged image, so I'm happy.  Thanks again.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To view this discussion on the web visit https://groups.google.com/d/msg/va-smalltalk/-/gU2ya82dbNcJ.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/va-smalltalk?hl=en.
Reply | Threaded
Open this post in threaded view
|

Aw: Re: Aw: Internal Error: LoginComponent>>rememberMe:

jtuchel
Lou,

glad to hear it worked. 
Marten would even have a better answer for you, I remember he wrote up a few things about Packaging a Seaside App somewhere, but I cannot find it on his blog right now. Maybe he'll post a link to this thread later. For now, modifying the Packaging Rules in one way or the other to include all getters/setters is probably the best thing you can do.

Good luck with your Seaside project

Joachim

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To view this discussion on the web visit https://groups.google.com/d/msg/va-smalltalk/-/B9qcCZrkebsJ.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/va-smalltalk?hl=en.
Reply | Threaded
Open this post in threaded view
|

Re: Aw: Re: Aw: Internal Error: LoginComponent>>rememberMe:

Louis LaBrunda
Hi Joachim,

I think what I added to the packaging instructions was based upon a suggestion of Marten's.

Thanks for the good wishes.

Lou

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To view this discussion on the web visit https://groups.google.com/d/msg/va-smalltalk/-/AlZFnwfyCicJ.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/va-smalltalk?hl=en.