But even with bind() it still shows you the locale in the url?
On Nov 9, 2007 3:22 PM, German Morales <[EMAIL PROTECTED]> wrote:
> Hi again,
>
> With your solution, the generated HTML now looks this way:
>
> <link rel="stylesheet" type="text/css"
> href="resources/path.to.mypage.MyPage/style_mystyle_mylocale.css" />
>
> i don't have style_mystyle_mylocale.css, but only style_mystyle.css
>
> But it works!
>
> So it seems that wicket later (when the browser asks for the css) makes
> the corresponding look up.
>
> Thanks a lot!
>
> German
>
> PS: just for the record (if someone reads this later), there was a easy
> typo in the code below. It should be Application.get() and not
> Application.bind().
>
> It seems that Johan Compagner wrote:
> > no as i said before
> > you have to create the resourcereference with the locale and the style.
> > Those are not automatically picked up from the session. If you don't
> give
> > them in the constructor
> > then both are just null
> >
> > What you could do is this:
> >
> > ResourceReference reference = new ResourceReference(MyPage.class,
> > "style.css",
> > locale,style);
> > reference.bind(Application.bind());
> > cResponse.getHeaderResponse().renderCSSReference(reference);
> > johan
> >
> >
> >
> > On Nov 9, 2007 1:55 PM, German Morales <[EMAIL PROTECTED]>
> > wrote:
> >
> >> version 1.3.0-beta4.
> >>
> >> I insist that the problem must be something different, perhaps in the
> >> way
> >> i pretend it to work. I know about the ResourceStreamLocator, and as i
> >> tell it works perfectly for the HTML. The difference is that from my
> >> class
> >> the framework looks automatically for the corresponding HTML, but how
> >> should it work for the CSS?
> >>
> >> Should i declare it in the code?
> >>
> >> // on renderHead
> >> cResponse.getHeaderResponse().renderCSSReference(new
> >> ResourceReference(MyPage.class, "style.css"));
> >>
> >> or how?
> >>
> >> What i'm doing is very simple... i'm forcing (for testing) a call to
> >> Session.setStyle("whatever"), then i have MyPage.html and
> >> MyPage_whatever.html (which works fine) and then style.css and
> >> style_whatever.css (which i expect to be used thanks to the code
> above).
> >>
> >> But when i see the generated html, it comes with the content of
> >> MyPage_whatever.html, but the header is generated this way:
> >>
> >> <link rel="stylesheet" type="text/css"
> >> href="resources/path.to.mypage.MyPage/style.css" />
> >>
> >> that is, not pointint to style_whatever.css as i expect.
> >>
> >> Thanks for the support,
> >>
> >> German
> >>
> >>
> >> It seems that Johan Compagner wrote:
> >> > it should fallback just fine..
> >> > what version of wicket are you using?
> >> >
> >> > Because in the ResourceStreamLocator we do now this:
> >> >
> >> > public IResourceStream locate(final Class clazz, String path, final
> >> String
> >> > style,
> >> > final Locale locale, final String extension)
> >> > {
> >> > // Try the various combinations of style, locale and extension to
> >> find
> >> > // the resource.
> >> > ResourceNameIterator iter = new ResourceNameIterator(path, style,
> >> > locale,
> >> > extension);
> >> > while (iter.hasNext())
> >> > {
> >> > String newPath = (String)iter.next();
> >> > IResourceStream stream = locate(clazz, newPath);
> >> > if (stream != null)
> >> > {
> >> > stream.setLocale(iter.getLocale());
> >> > return stream;
> >> > }
> >> > }
> >> > return null;
> >> > }
> >> >
> >> > johan
> >> >
> >> >
> >> >
> >> > On Nov 9, 2007 1:11 PM, German Morales <[EMAIL PROTECTED]>
> >> > wrote:
> >> >
> >> >> Hi again,
> >> >>
> >> >> Also, the problem is not giving the parameters to the
> >> >> ResourceReferences,
> >> >> if i call the full constructor then the ResourceReference works, but
> >> the
> >> >> problem is that it does not make a look up to see what's available,
> >> it
> >> >> just goes for the full thing. So, if i call the constructor with the
> >> >> session locale and style, what it does is search for the file
> >> >> style_mystyle_mylocale.css. This is not my intention, what i want it
> >> >> that
> >> >> that the framework searches for the style_mystyle_mylocale.css, then
> >> if
> >> >> not found fall back to style_mystyle.css, style_mylocale.css,
> >> style.css
> >> >> and so on (i'm not sure of the exact order of look up). So,
> modifying
> >> >> the
> >> >> constructor or passing the full parameters is not the solution, i
> >> think.
> >> >>
> >> >>
> >> >> Regards,
> >> >>
> >> >> German
> >> >>
> >> >> It seems that Johan Compagner wrote:
> >> >> > if you are creating your own ResourceReferences then you have to
> >> give
> >> >> the
> >> >> > style and locale to them
> >> >> > We could enhance the constructors that it does
> >> >> Session.get().getLocale()
> >> >> > and
> >> >> > Session.get().getStyle()
> >> >> > if you dont give them..
> >> >> >
> >> >> > johan
> >> >> >
> >> >> >
> >> >> >
> >> >> > On Nov 9, 2007 10:27 AM, German Morales
> >> <[EMAIL PROTECTED]>
> >> >> > wrote:
> >> >> >
> >> >> >> Hi,
> >> >> >>
> >> >> >> I was thinking (as a last hope) that if this works for the HTMLs,
> >> i
> >> >> >> could
> >> >> >> provide different HTMLs that point internally to different CSSs,
> >> and
> >> >> it
> >> >> >> should work. But that would be duplicating the HTML just to have
> >> the
> >> >> CSS
> >> >> >> changed, and then it's not a good idea.
> >> >> >>
> >> >> >> Perhaps someone can tell me an official way to have localized and
> >> >> styled
> >> >> >> CSSs, the wicket way?
> >> >> >>
> >> >> >> Thanks again,
> >> >> >>
> >> >> >> German
> >> >> >>
> >> >> >> It seems that German Morales wrote:
> >> >> >> > Hi,
> >> >> >> >
> >> >> >> > I use it inside a page.
> >> >> >> >
> >> >> >> > I've tried...
> >> >> >> >
> >> >> >> > // inside the page constructor
> >> >> >> > add(HeaderContributor.forCss(new
> >> ResourceReference(MyPage.class
> >> ,
> >> >> >> > "style.css")));
> >> >> >> >
> >> >> >> > and
> >> >> >> >
> >> >> >> > // inside renderHead
> >> >> >> > cResponse.getHeaderResponse().renderCSSReference(new
> >> >> >> > ResourceReference(MyPage.class, "style.css"));
> >> >> >> >
> >> >> >> >
> >> >> >> > And I don't want to set the style and locale explicitely. What
> i
> >> >> want
> >> >> >> is
> >> >> >> > to deliver the application to a customer, and, if he wants, he
> >> adds
> >> >> >> the
> >> >> >> > customized page for a locale or style by itself (he could set
> >> the
> >> >> >> style
> >> >> >> > with a parameter or whatever). And as far as i understand the
> >> >> wicket
> >> >> >> > approach, that's how it should work automatically. In fact it
> >> works
> >> >> >> > perfecly when i do it for the html of the same page. The
> >> difference
> >> >> is
> >> >> >> > that the html is handled in other way (the framework does it)
> >> and
> >> >> when
> >> >> >> i
> >> >> >> > try to do it for the CSS of the page i do it (and it doesn't
> >> work).
> >> >> So
> >> >> >> > there must be something i'm not doing properly.
> >> >> >> >
> >> >> >> > Or, how should be the way to provide styled CSSs, there is
> >> another
> >> >> >> > aproach?
> >> >> >> >
> >> >> >> > thanks and bye,
> >> >> >> >
> >> >> >> > German
> >> >> >> >
> >> >> >> > It seems that Eelco Hillenius wrote:
> >> >> >> >>> The problem is that the file is there... just that it doesn't
> >> >> seem
> >> >> >> to
> >> >> >> >>> be
> >> >> >> >>> looking for it.
> >> >> >> >>>
> >> >> >> >>> If i force the full constructor:
> >> >> >> >>>
> >> >> >> >>> new ResourceReference(MyPage.class, "style.css", getLocale(),
> >> >> >> >>> getStyle())
> >> >> >> >>>
> >> >> >> >>> all works, so the file is correcly found and the name is
> >> correct.
> >> >> >> >>>
> >> >> >> >>> The problem is when i don't set the locale and style
> >> explicitely
> >> >> (as
> >> >> >> it
> >> >> >> >>> is
> >> >> >> >>> supposed to be done):
> >> >> >> >>>
> >> >> >> >>> new ResourceReference(MyPage.class, "style.css")
> >> >> >> >>>
> >> >> >> >>> then it doesn't find the file. Actually i think it doesn't
> >> even
> >> >> try
> >> >> >> to
> >> >> >> >>> find it, since as i mention i put a breakpoint in
> >> >> >> >>> ResourceReference#setStyle() and nobody is calling it. So
> >> later
> >> >> >> >>> internal
> >> >> >> >>> code to load the resource uses style and locale with null
> >> values.
> >> >> >> >>
> >> >> >> >> How do you use the resource reference? I think the class was
> >> >> designed
> >> >> >> >> in such a way that the components that use it (Image for
> >> instance)
> >> >> >> are
> >> >> >> >> responsible for setting the appropriate locale/ style 'just in
> >> >> time',
> >> >> >> >> so that switching locales etc works.
> >> >> >> >>
> >> >> >> >> Eelco
> >> >> >> >>
> >> >> >> >>
> >> >>
> ---------------------------------------------------------------------
> >> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >>
> >> >> >> >>
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> ---------------------------------------------------------------------
> >> >> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>
> >> ---------------------------------------------------------------------
> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >>
> >> >> >>
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >>
> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >>
> >> >>
> >> >
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>