Re: T5: inject ComponentResources in a service

2007-11-01 Thread Peter Stavrinides
I suffered with this one for quite some time... you can *not provide ComponentResources to a service, you will end up with all sorts of funky errors, but I did however manage to create a navigation component and reuse it in there. The navigation component is part of my layout template, so I don

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Davor Hrg
Thats, just it:) make a component, not a function ... you'll copy pasete your function arround and iject component resources in each page that uses it, look at the ActionLink source and create an ExternalLink from it :) Davor Hrg On 10/26/07, Angelo Chen <[EMAIL PROTECTED]> wrote: > > > Hi Nick,

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Angelo Chen
Hi Nick, yes, I just want to make a method to create external page link, well, I'll just create it on the page, was thinking I can make a generic function for that. Nick Westgate wrote: > > At a glance, you just want to call createPageLink on a Page. > > So you could inject the PagePool to g

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Davor Hrg
or, instead of creating a service, just create an ExternalLink component like normal link already is Hrg On 10/26/07, Nick Westgate <[EMAIL PROTECTED]> wrote: > > At a glance, you just want to call createPageLink on a Page. > > So you could inject the PagePool to get the page and go from there. >

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Nick Westgate
At a glance, you just want to call createPageLink on a Page. So you could inject the PagePool to get the page and go from there. That's an internal service though ... can't see an obvious way to do this without "more than a glance". ;-) Cheers, Nick. Angelo Chen wrote: hi davor, correction,

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Davor Hrg
you can not inject component resources that way ... it is specific to a component so it's scope is not even PER_THREAD you will have to provide it in the method you call... and inject it into your page... look at it this way: if you have a dozen of components on your page and from one of the comp

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Angelo Chen
hi davor, correction, the problem is ComponentResources used in the constructor, it has this error: Exception constructing service 'MyServices': Error invoking constructor org.bfe.myapp.t5.MyServicesImp(ComponentResources) (at MyServicesImp.java:36) (for service 'MyServices'): No service impleme

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Angelo Chen
Hi, Thanks, now when there is only one parameter in the constructor, it works: public MyServicesImp(ApplicationGlobals globals) { this.globals = globals; } but if I have this: public MyServicesImp(ApplicationGlobals globals, ComponentResources resources) { this.globals =

Re: T5: inject ComponentResources in a service

2007-10-26 Thread Davor Hrg
service do not get enhanced like pages do, services get dependacies through constructor... http://tapestry.apache.org/tapestry5/tapestry-ioc/service.html Davor Hrg On 10/26/07, Angelo Chen <[EMAIL PROTECTED]> wrote: > > > Hi, > > I injected ComponentResources in a service, but it's null, why? >

T5: inject ComponentResources in a service

2007-10-26 Thread Angelo Chen
Hi, I injected ComponentResources in a service, but it's null, why? public class MyServicesImp implements MyServices { @Inject private ComponentResources resources; public String createExternalPageLink(String pageName, Object context) { return getDomainName() + resources.cr