Re: Can i catch urls like "http://localhost:8080/ShowThemePage-ti325-Twilight.html" by IRequestTargetUrlCodingStrategy?

2011-01-27 Thread Igor Vaynberg
webapplication {
protected IRequestCycleProcessor newRequestCycleProcessor()
 {
return new WebRequestCycleProcessor() {
   protected IRequestCodingStrategy newRequestCodingStrategy() {
  return new MyStrategy();<===

also make yours either extend WebRequestCodingStrategy or chain to it.

-igor


On Thu, Jan 27, 2011 at 11:00 AM,   wrote:
> 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 
>> 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  wrote:
>> > Hi,
>> >
>> > urls in my shop look like this
>> > 
>> > http://localhost:8080/ShowThemePage-ti325-Twilight.html
>> > 
>> > 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
>> > 
>> >            mount(new ThemeUrlCodingStrategy());
>> > 
>> >
>> > The strategy looks like
>> > 
>> > 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;
>> >    }
>> > }
>> > 
>> >
>> > 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
>
>

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



Re: Can i catch urls like "http://localhost:8080/ShowThemePage-ti325-Twilight.html" by IRequestTargetUrlCodingStrategy?

2011-01-27 Thread wicket-mike
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 
> 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  wrote:
> > Hi,
> >
> > urls in my shop look like this
> > 
> > http://localhost:8080/ShowThemePage-ti325-Twilight.html
> > 
> > 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
> > 
> >            mount(new ThemeUrlCodingStrategy());
> > 
> >
> > The strategy looks like
> > 
> > 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;
> >    }
> > }
> > 
> >
> > 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



Re: Can i catch urls like "http://localhost:8080/ShowThemePage-ti325-Twilight.html" by IRequestTargetUrlCodingStrategy?

2011-01-27 Thread Igor Vaynberg
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  wrote:
> Hi,
>
> urls in my shop look like this
> 
> http://localhost:8080/ShowThemePage-ti325-Twilight.html
> 
> 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
> 
>            mount(new ThemeUrlCodingStrategy());
> 
>
> The strategy looks like
> 
> 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;
>    }
> }
> 
>
> 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



Can i catch urls like "http://localhost:8080/ShowThemePage-ti325-Twilight.html" by IRequestTargetUrlCodingStrategy?

2011-01-27 Thread Mike Mander

Hi,

urls in my shop look like this

http://localhost:8080/ShowThemePage-ti325-Twilight.html

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

mount(new ThemeUrlCodingStrategy());


The strategy looks like

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;
}
}


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