Thanks Igor,

i checked the settings but couldn't find anything what i could use to solve my 
problem.
Can you please push me a bit further and tell me what i can do to map the url 
to a page with appropriate parameters.

Thanks again
Mike

-------- Original-Nachricht --------
> Datum: Thu, 27 Jan 2011 08:04:53 -0800
> Von: Igor Vaynberg <igor.vaynb...@gmail.com>
> An: users@wicket.apache.org
> Betreff: Re: Can i catch urls like 
> "http://localhost:8080/ShowThemePage-ti325-Twilight.html"; by 
> IRequestTargetUrlCodingStrategy?

> instead of mounting it set in the settings. mounting is for
> intercepting path segments.
> 
> also set a breakpoint and see if its being hit.
> 
> -igor
> 
> 
> On Thu, Jan 27, 2011 at 2:56 AM, Mike Mander <wicket-m...@gmx.de> wrote:
> > Hi,
> >
> > urls in my shop look like this
> > <code>
> > http://localhost:8080/ShowThemePage-ti325-Twilight.html
> > </code>
> > ShowThemePage should be mapped to my ThemePage.class
> > The ti325 and Twilight Tokens should be indexed parameters
> > and the .html is for ornament.
> >
> > Until now i mounted my own Strategy in my application.init
> > <code>
> >            mount(new ThemeUrlCodingStrategy());
> > </code>
> >
> > The strategy looks like
> > <code>
> > import org.apache.wicket.IRequestTarget;
> > import org.apache.wicket.PageParameters;
> > import org.apache.wicket.request.RequestParameters;
> > import
> >
> org.apache.wicket.request.target.coding.AbstractRequestTargetUrlCodingStrategy;
> > import
> >
> org.apache.wicket.request.target.component.BookmarkablePageRequestTarget;
> > import
> >
> org.apache.wicket.request.target.component.IBookmarkablePageRequestTarget;
> > import org.apache.wicket.util.string.AppendingStringBuffer;
> >
> > import de.shop.shopping.ThemePage;
> >
> > public class ThemeUrlCodingStrategy extends
> > AbstractRequestTargetUrlCodingStrategy {
> >
> >    public ThemeUrlCodingStrategy() {
> >        super("ShowThemePage");
> >    }
> >
> >    @Override
> >    public CharSequence encode(IRequestTarget requestTarget) {
> >        AppendingStringBuffer url = new
> > AppendingStringBuffer("ShowThemePage-ti");
> >        IBookmarkablePageRequestTarget target =
> > (IBookmarkablePageRequestTarget) requestTarget;
> >        PageParameters parameters = target.getPageParameters();
> >
> >
>  url.append(urlEncodePathComponent(String.valueOf(parameters.get("ti")))).append("-").append(urlEncodePathComponent(escape(String.valueOf(parameters.get("name")))));
> >        return url.append(".html");
> >    }
> >
> >    private String escape(String value) {
> >        return value == null ? null : value.replaceAll(" ", "_");
> >    }
> >
> >    @Override
> >    public IRequestTarget decode(RequestParameters requestParameters) {
> >        return new BookmarkablePageRequestTarget(ThemePage.class, new
> > PageParameters("ti=99, name=Hello_kitty")); // for testing use constant
> > parameters
> >    }
> >
> >    @Override
> >    public boolean matches(IRequestTarget requestTarget) {
> >        if (requestTarget instanceof IBookmarkablePageRequestTarget)
> {
> >            IBookmarkablePageRequestTarget target =
> > (IBookmarkablePageRequestTarget) requestTarget;
> >            return
> ThemePage.class.isAssignableFrom(target.getPageClass());
> >        }
> >        return false;
> >    }
> > }
> > </code>
> >
> > But all i get is a 404 for page not found. Do i have to implement
> something
> > else?
> >
> > Thanks for help
> > Mike
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> > For additional commands, e-mail: users-h...@wicket.apache.org
> >
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
> 

-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de

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

Reply via email to