I have a situation here: one application page can be rendered using either one or two parameters in context. What I was expecting is calling onActivate with signature that exactly matches the number of context parameters. Instead, framework calls all onActivate methods. I've already found relevant place in documentation, but I must say this is very confusing.
If I assign context variables to instance fields, I must check (in each onActivate method) that this particular field was not assigned already. I guess that calling only one onActivate (the one with method parameters count exactly matching context parameters count) would be much more consistent. So, instead of public void onActivate ( String book ) { this.bookCode = book; if ( this.topicId == null ) this.topicId = ""; } public void onActivate ( String book, String topicId ) { this.bookCode = book; this.topicId = topicId; } we would have public void onActivate ( String book ) { this.bookCode = book; } public void onActivate ( String book, String topicId ) { this.bookCode = book; this.topicId = topicId; } -- Ilya Obshadko