[Seaside] VM freezes; how to find the cause?

Bahman Movaqar Bahman at BahmanM.com
Sun May 26 11:48:19 UTC 2013


Apparently `initialize' is done correctly because when I put `self
halt.' at the bottom of `initialize' the VM actually halts there. But
after pushing the "proceed" button, it freezes again.

<code>

StRootComponent >>#initialize
    super initialize.
    self
        menuComponent: self initializeMenuComponent;
        listComponent: self initializeListComponent.


StRootComponent >>#initializeListComponent
    self listComponent: StListComponent new.
    self listComponent
        sortBlock: [ :items | items sortBy: [ :a :b | a deadline < b
deadline ] ];
        renderItemBlock: [ :task :html | self renderTask: task asRowOn:
html ].
    self showPendingTasks.
    self listComponent items: self testTasks.


StRootComponent >>#initializeMenuComponent
    self
        menuComponent:
            (StMenuComponent new
                addEntry: 'All' withAction: [ self showAllTasks ];
                addEntry: 'Completed' withAction: [ self
showCompletedTasks ];
                addEntry: 'Pending' withAction: [ self showPendingTasks ];
                addEntry: 'Missed' withAction: [ self showMissedTasks ];
                yourself)


StRootComponent >>#testTasks
    ^ OrderedCollection
        with:
            (StTask new
                deadline: Date yesterday;
                completed: false;
                taskName: 'Missed task')
        with:
            (StTask new
                deadline: Date tomorrow;
                completed: false;
                taskName: 'Pending task')
        with:
            (StTask new
                deadline: Date tomorrow;
                completed: true;
                taskName: 'Already completed task')
</code>

TIA,

--
Bahman Movaqar  (http://BahmanM.com)
ERP Evaluation, Implementation, Deployment Consultant

On 2013-05-26 15:04, Johan Brichau wrote:
> On 26 May 2013, at 12:30, Bahman Movaqar <Bahman at BahmanM.com> wrote:
>
>> As I said, I'm using Pharo (2.0).
> sorry, missed that part.
>
>> This means that something is going wrong in the `initialize' method, right?
> Possibly. What is the code of your initialize method?
> The most common cause would be an infinite loop by doing a 'self initialize' instead of a super initialize inside your initialize method.
>
> Johan_______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>



More information about the seaside mailing list