Thanks for the input; I definitely changed a few things in PageTester
to simplify the behavior and make it use more of the same code
pathways that a deployed application would. I'll see about fixing
these.

On Fri, Feb 20, 2009 at 6:39 PM, alex_yt_cheung
<alex_yt_che...@yahoo.com> wrote:
>
> Yes baby, 5.1.0.0, fresh off the press and already running.. mostly:-)
>
> Just want to share my experience and ask how best to resolve some issues.
>
> * Some refactoring for new interface adaptations: LinkFactory, use of
> ValueEncoder instead of PrimaryKeyEncoder...etc.  nothing too serious to get
> the code compile and running.

LinkFactory is internal and 5.1 has and will have more ways to
accomplish the same goals that used to involve overriding LinkFactory.

PKE: this change is quasi-backwards compatible; you may find that you
can keep your PKE but have to use a different constructor of
DefaultPrimaryKeyEncoder (to pass up the type of the key).

> * Tapestry module class is restricted to builders, contributions, decorators
> and bind methods.  If you have convenient methods inside the module classes,
> you will need to do some refactoring.

You can use private methods for these convieniences.

> * The PageTester don't support parameters with space, comma, %, or +
> anymore.  Ended up reducing the complexity of the strings to allow the tests
> to run.  It will be great I can go back to having more complex strings as
> parameters to my test pages.

Please add a detailed issue to JIRA for this.

> * Not sure if it is the PageTester or the rendering sequence, but I notice a
> difference in behavior on exception handling when using the PageTester.  The
> call to renderPage() seems to have processed the exception, where previously
> the exception was thrown to the caller.  The announing part is that the
> document returned only tells you the exception, in my case, a
> ClassNotFoundException was thrown while loading the xxxPage, but I can't
> tell which class was really not found.
> * There is a PageTesterModule that contributes to the PageTester
> environment.  My issue is with contributeApplicationDefaults(), our module
> also issue an configuration.add(SymbolConstants.FORCE_ABSOLUTE_URIS,
> "true").  It turned out that an IllegalArgumentException is thrown when
> tapestry sees two add() calls for the same key.  I use
> configuration.override() to fix my test, but that break my dev/prod
> environment because override() throws IllegalArgumentException when trying
> to override() an non-existent key.  The IllegalArgumentException exception
> is thrown from MappedConfiguration.apply():line 42.  That requires knowing
> if the key exists prior to calling override.  Maybe a new API to peek into
> the config for existence check will do nicely.

Actualy, PageTester should override FactoryDefaults, rather than
provide ApplicationDefaults. This can be fixed.

>
> I have some work-arounds, but will be grateful for patches or better
> solutions.
>
> thanks in advance.
> - alex
> --
> View this message in context: 
> http://www.nabble.com/5.1.0.0-upgrade-issues.-tp22132202p22132202.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to