Hi Dmitry!
Thank you for your suggestion, but I can't see how bundled
BookmarkableCryptoMapper could help in my case. In my quickstart on 6.10.0
CryptoMapper is never given a word, so it will never join the mapper chain,
during mapHandler(..) in case of bookmarkable page, disregarding its
implementation.
I'll try to illustrate the behavior:
in my Application.init() after calling /"setRootRequestMapper(new
CryptoMapper(getRootRequestMapper(), this));"/ the mappers hierarchy is like
this:
- CryptoMapper
|
|-- SystemMapper
|---- Collection of Wicket internal mappers
This state it is fine, CryptoMapper is set as root and is decorating all
request / handler processing to wicket internal mapper and therefore encodes
/ decodes urls produced by them.
but next line in application init, after I set /"mountPage("nice/nicer"
BookedPage.class);"/ the hierarchy is like this:
- CompoundRequestMapper
|
|--CryptoMapper
| |--SystemMapper
| |--Wicket mappers collection
|
|--MountedMapper
To describe the problem - CompoundRequestMapper (set as root) is processing
mapHandler(ListenerInterfaceRequestHandler), executes its mappers in reverse
order (only 2 in my case) until one returns non-null URL, so MountedMapper
is executed first, returns a non-null URL and than the thread is returned
back to the callers (component.urlFor(), etc, during rendering), *but
CryptoMapper is never invited to "say Hi"!*
To quick-fix my case it is enough to:
public Url mapHandler(IRequestHandler requestHandler) {
if (requestHandler instanceof RenderPageRequestHandler) {
return super.mapHandler(requestHandler);
}
return null;
}
in a MountedMapper extension to encode all, with an exception for URL in a
web browser. But anyway I don't see the reason, why it must be done manually
and why Wicket should silently bypassing all URL encrypting for bookmarkable
pages.
Looking forward next shooting session! Roman.
--
View this message in context:
http://apache-wicket.1842946.n4.nabble.com/CryptoMapper-and-mounted-pages-tp4661676p4661730.html
Sent from the Users forum mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]