1 Reply Latest reply on Feb 1, 2006 11:11 AM by pmn92

    2.2 Layout - Theme - layout Startegy

      I am receiving an exception Strategy can only be evaluated with a valid layout provided. but I am not seeing what I am doing wrong, could you help?

      Thanks,
      Philippe


      The war file contains the folowing folders:
      /layouts
      /themes
      /images
      /scripts
      /META-INF
      /WEB-INF

      below is portal-laouts.xml in /WEB-INF folder:

      <?xml version="1.0" encoding="UTF-8"?>
      <layouts>
       <layout>
       <name>evolab.generic</name>
       <uri>/layouts/generic/index.jsp</uri>
       <uri state="maximized">/layouts/generic/maximized.jsp</uri>
       <regions>
       <region name="left"/>
       <region name="center"/>
       <region name="navigation"/>
       </regions>
       </layout>
      </layouts>



      below is portal-themes.xml in /WEB-INF folder:
      <?xml version="1.0" encoding="UTF-8"?>
      <themes>
       <theme>
       <name>evolab.industrial</name>
       <link rel="stylesheet" id="main_css" href="/themes/industrial/evos_style.css" type="text/css" />
       <link rel="shortcut icon" href="/themes/industrial/images/favicon.ico" />
       </theme>
       <theme>
       <name>evolab.Nphalanx</name>
       <link rel="stylesheet" id="main_css" href="/themes/phalanx/evos_style.css" type="text/css" />
       <link rel="shortcut icon" href="/themes/phalanx/images/favicon.ico" />
       </theme>
      </themes>


      below is an extract of test-object.xml in /WEB-INF folder:
      <portal>
       <portal-name>Test</portal-name>
       <properties>
       <property>
       <name>layout.id</name>
       <value>evolab.generic</value>
       </property>
       <property>
       <name>theme.id</name>
       <value>evolab.industrial</value>
       </property>
       <property>
       <name>theme.renderSetId</name>
       <value>divRenderer</value>
       </property>
       <property>
       <name>layout.strategyId</name>
       <value>default</value>
       </property>
       <property>
       <name>theme.windowRendererId</name>
       <value>emptyRenderer</value>
       </property>
       <property>
       <name>theme.decorationRendererId</name>
       <value>emptyRenderer</value>
       </property>
       <property>
       <name>theme.portletRendererId</name>
       <value>emptyRenderer</value>
       </property>
       </properties>
      


      Below is the full trace of the error:
      java.lang.IllegalArgumentException: Strategy can only be evaluated with a valid layout provided.
       org.jboss.portal.theme.impl.strategy.DefaultStrategyImpl.evaluate(DefaultStrategyImpl.java:63)
       org.jboss.portal.theme.invocation.StrategyInterceptor.invoke(StrategyInterceptor.java:75)
       org.jboss.portal.theme.page.PageInterceptor.invoke(PageInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.theme.invocation.RenderSetInterceptor.invoke(RenderSetInterceptor.java:72)
       org.jboss.portal.theme.page.PageInterceptor.invoke(PageInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.theme.invocation.ThemeInterceptor.invoke(ThemeInterceptor.java:78)
       org.jboss.portal.theme.page.PageInterceptor.invoke(PageInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.theme.invocation.LayoutInterceptor.invoke(LayoutInterceptor.java:75)
       org.jboss.portal.theme.page.PageInterceptor.invoke(PageInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.server.invocation.Invocation.invoke(Invocation.java:162)
       org.jboss.portal.theme.impl.page.PageServiceImpl.invoke(PageServiceImpl.java:109)
       sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       java.lang.reflect.Method.invoke(Method.java:324)
       org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
       org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
       org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
       org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
       org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
       org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
       org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
       $Proxy46.invoke(Unknown Source)
       org.jboss.portal.core.command.RenderPageCommand.execute(RenderPageCommand.java:149)
       org.jboss.portal.core.command.ControllerCommand.dispatch(ControllerCommand.java:65)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:127)
       org.jboss.portal.core.aspects.controller.EventBroadcasterInterceptor.invoke(EventBroadcasterInterceptor.java:72)
       org.jboss.portal.core.command.CommandInterceptor.invoke(CommandInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor.invoke(PolicyEnforcementInterceptor.java:156)
       org.jboss.portal.core.command.CommandInterceptor.invoke(CommandInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.controller.PortalNodeInterceptor.invoke(PortalNodeInterceptor.java:48)
       org.jboss.portal.core.command.CommandInterceptor.invoke(CommandInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.controller.NavigationInterceptor.invoke(NavigationInterceptor.java:45)
       org.jboss.portal.core.command.CommandInterceptor.invoke(CommandInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.server.invocation.Invocation.invoke(Invocation.java:162)
       org.jboss.portal.core.command.CommandContext.execute(CommandContext.java:94)
       org.jboss.portal.core.command.ExecutionContext.execute(ExecutionContext.java:80)
       org.jboss.portal.core.command.ExecutionContext.execute(ExecutionContext.java:64)
       org.jboss.portal.core.CoreController.handle(CoreController.java:177)
       sun.reflect.GeneratedMethodAccessor215.invoke(Unknown Source)
       sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       java.lang.reflect.Method.invoke(Method.java:324)
       org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
       org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
       org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:118)
       org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
       org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
       org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
       org.jboss.mx.util.JMXInvocationHandler.invoke(JMXInvocationHandler.java:273)
       $Proxy136.handle(Unknown Source)
       org.jboss.portal.server.ServerInvocation.dispatch(ServerInvocation.java:63)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:127)
       org.jboss.portal.core.aspects.server.SubjectAssociationInterceptor.invoke(SubjectAssociationInterceptor.java:35)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.server.PolicyAssociationInterceptor.invoke(PolicyAssociationInterceptor.java:40)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.server.aspects.server.ContentTypeInterceptor.invoke(ContentTypeInterceptor.java:55)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.server.LocaleInterceptor.invoke(LocaleInterceptor.java:56)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.server.UserInterceptor.invoke(UserInterceptor.java:171)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.server.aspects.server.SessionInvalidatorInterceptor.invoke(SessionInvalidatorInterceptor.java:74)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.core.aspects.server.TransactionInterceptor.invoke(TransactionInterceptor.java:62)
       org.jboss.portal.server.ServerInterceptor.invoke(ServerInterceptor.java:25)
       org.jboss.portal.server.invocation.Invocation.invokeNext(Invocation.java:117)
       org.jboss.portal.server.invocation.Invocation.invoke(Invocation.java:162)
       org.jboss.portal.server.servlet.PortalServlet.doGet(PortalServlet.java:208)
       javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
       javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
       org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)