That doesn't seem to work Thiago, or maybe I'm missing something:
public class TapestryExtensionImpl implements TapestryExtension
{
@Inject
private Environment environment;
@SuppressWarnings("unchecked")
public <T> T getPage(Class<T> pageClass)
{
ComponentSource componentSource =
environment.peekRequired(ComponentSource.class);
return (T) componentSource.getPage(pageClass);
}
}
Caused by: java.lang.RuntimeException: No object of type
org.apache.tapestry5.services.ComponentSource is available from the
Environment. Available types are
org.apache.tapestry5.services.ComponentEventResultProcessor.
at
org.apache.tapestry5.internal.services.EnvironmentImpl.peekRequired(EnvironmentImpl.java:79)
at $Environment_12a4a4a9c82.peekRequired($Environment_12a4a4a9c82.java)
at $Environment_12a4a4a9bbb.peekRequired($Environment_12a4a4a9bbb.java)
at
com.mapshed.vha.services.TapestryExtensionImpl.getPage(TapestryExtensionImpl.java:21)
Thiago H. de Paula Figueiredo wrote:
On Fri, 06 Aug 2010 17:38:53 -0300, Paul Stanton <p...@mapshed.com.au>
wrote:
Thiago,
Hi!
By "declare your class as a service" do you mean bind it? ie:
public static void bind(ServiceBinder binder) {
binder.bind(TapestryExtension.class,
TapestryExtensionImpl.class);
}
Yes.
or do i need to 'contribute' it somewhere? Because it isn't working.:
ComponentResources ins't a service. There's class transformation
applied to component and pages classes that inject it. You should get
it from the Environment service by using the peek() or peekRequired()
methods.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org