You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@shale.apache.org by Daniel del Río <da...@programaria.com> on 2006/08/29 09:44:00 UTC

Why I get org.apache.tiles.FactoryNotFoundException

Hello,
looking in he logs i see a lot of erros with the message:

.. tiles.TilesViewHandler - Tiles error org.apache.tiles.FactoryNotFoundException: Can't get definitions factory from context ...

the application runs well and seems this error doesn't affect, anyway this is a bit annoying. 
It is normal or I forgot something ? I don't use full xml clay views.

Thanks.
drh.



Re: Why I get org.apache.tiles.FactoryNotFoundException

Posted by Daniel del Río <da...@programaria.com>.
Tanks Greg,
Indeed, the web confing file don't have the TilesServlet nor TilesListener, 
i did "copy-paste" from the usescases example.

I will try to put these in the web config file.
thanks.
----- Original Message ----- 
From: "Greg Reddin" <gr...@apache.org>
To: <us...@shale.apache.org>
Sent: Tuesday, August 29, 2006 4:42 PM
Subject: Re: Why I get org.apache.tiles.FactoryNotFoundException



On Aug 29, 2006, at 9:35 AM, Daniel del Río wrote:

> I'm not using tiles views, only clay templates (as far I know clay 
> templates haven't any relation to tiles, isn't?

No, not inherently.

> [ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default 
> (self-tuning)' ERROR tiles.TilesViewHandler - Tiles error
> org.apache.tiles.FactoryNotFoundException: Can't get definitions  factory 
> from context.
> at org.apache.tiles.TilesUtilImpl.getDefinition(TilesUtilImpl.java: 227)
> at org.apache.tiles.TilesUtil.getDefinition(TilesUtil.java:183)
> at org.apache.shale.tiles.TilesViewHandler.getTile 
> (TilesViewHandler.java:263)

So, do you have either the TilesServlet or TilesListener configured
in your webapp?  Do you have any tiles definitions file?  Do you have
context parameters pointing to the tiles config file?

If any of the above answers is "no" you will probably get this
error.  Perhaps we could do a better job of explaining the problem in
the error message.

Greg




Re: Why I get org.apache.tiles.FactoryNotFoundException

Posted by Greg Reddin <gr...@apache.org>.
On Aug 29, 2006, at 9:35 AM, Daniel del Río wrote:

> I'm not using tiles views, only clay templates (as far I know clay  
> templates haven't any relation to tiles, isn't?

No, not inherently.

> [ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default  
> (self-tuning)' ERROR tiles.TilesViewHandler - Tiles error
> org.apache.tiles.FactoryNotFoundException: Can't get definitions  
> factory from context.
> at org.apache.tiles.TilesUtilImpl.getDefinition(TilesUtilImpl.java: 
> 227)
> at org.apache.tiles.TilesUtil.getDefinition(TilesUtil.java:183)
> at org.apache.shale.tiles.TilesViewHandler.getTile 
> (TilesViewHandler.java:263)

So, do you have either the TilesServlet or TilesListener configured  
in your webapp?  Do you have any tiles definitions file?  Do you have  
context parameters pointing to the tiles config file?

If any of the above answers is "no" you will probably get this  
error.  Perhaps we could do a better job of explaining the problem in  
the error message.

Greg


Re: Why I get org.apache.tiles.FactoryNotFoundException

Posted by Daniel del Río <da...@programaria.com>.
I'm not using tiles views, only clay templates (as far I know clay templates 
haven't any relation to tiles, isn't?)
In fact, my clay-tiles-config.xml is empty:

<!DOCTYPE view PUBLIC
    "-//Apache Software Foundation//DTD Shale Clay View Configuration 
1.0//EN"
    "http://struts.apache.org/dtds/shale-clay-config_1_0.dtd">
<view>
</view>

The complete stack trace is:

[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default 
(self-tuning)' ERROR tiles.TilesViewHandler - Tiles error
org.apache.tiles.FactoryNotFoundException: Can't get definitions factory 
from context.
 at org.apache.tiles.TilesUtilImpl.getDefinition(TilesUtilImpl.java:227)
 at org.apache.tiles.TilesUtil.getDefinition(TilesUtil.java:183)
 at 
org.apache.shale.tiles.TilesViewHandler.getTile(TilesViewHandler.java:263)
 at 
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.java:129)
 at 
org.apache.shale.view.faces.ViewViewHandler.renderView(ViewViewHandler.java:151)
 at 
org.apache.shale.clay.faces.ClayViewHandler.renderView(ClayViewHandler.java:442)
 at 
org.apache.shale.clay.faces.ClayViewHandler.renderView(ClayViewHandler.java:442)
 at 
org.apache.shale.view.faces.ViewViewHandler.renderView(ViewViewHandler.java:151)
 at 
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.java:175)
 at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:352)
 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:107)
 at 
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:225)
 at 
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:127)
 at 
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:272)
 at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
 at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
org.apache.shale.faces.ShaleApplicationFilter.doFilter(ShaleApplicationFilter.java:271)
 at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:26)
 at 
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
 at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3151)
 at 
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at 
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
 at 
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:1973)
 at 
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1880)
 at 
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1310)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)



----- Original Message ----- 
From: "Greg Reddin" <gr...@apache.org>
To: <us...@shale.apache.org>
Sent: Tuesday, August 29, 2006 3:52 PM
Subject: Re: Why I get org.apache.tiles.FactoryNotFoundException


Can you post your stacktrace?  Are you actually getting tiles-based
views to work?

Greg

On Aug 29, 2006, at 2:44 AM, Daniel del Río wrote:

> Hello,
> looking in he logs i see a lot of erros with the message:
>
> .. tiles.TilesViewHandler - Tiles error 
> org.apache.tiles.FactoryNotFoundException: Can't get definitions  factory 
> from context ...
>
> the application runs well and seems this error doesn't affect,  anyway 
> this is a bit annoying.
> It is normal or I forgot something ? I don't use full xml clay views.
>
> Thanks.
> drh.
>
>




Re: Why I get org.apache.tiles.FactoryNotFoundException

Posted by Greg Reddin <gr...@apache.org>.
Can you post your stacktrace?  Are you actually getting tiles-based  
views to work?

Greg

On Aug 29, 2006, at 2:44 AM, Daniel del Río wrote:

> Hello,
> looking in he logs i see a lot of erros with the message:
>
> .. tiles.TilesViewHandler - Tiles error  
> org.apache.tiles.FactoryNotFoundException: Can't get definitions  
> factory from context ...
>
> the application runs well and seems this error doesn't affect,  
> anyway this is a bit annoying.
> It is normal or I forgot something ? I don't use full xml clay views.
>
> Thanks.
> drh.
>
>