Package de.odysseus.calyxo.panels

Examples of de.odysseus.calyxo.panels.PanelsContext$ItemEntry


          throw new ServletException("Could not find path for panel " + panel.toInlineString());
        }
        template = addParams(template, dispatch, "UTF-8");
//        log.debug("path " + path);

        PanelsContext context = support.getOrCreateContext(request, locale);

//        log.debug("push " + panel.getName());
        context.push(panel);

        // add dispatch parameters to current panel
//        Iterator params = dispatch.getParamConfigs();
//        while (params.hasNext()) {
//          ParamConfig param = (ParamConfig)params.next();
//          context.addParamConfig(
//            new DynamicParamConfig(param.getName(), param.getValue())
//          );
//        }

        try {
          dispatch(request, response, template, false);
        } finally {
//          log.debug("pop " + panel.getName());
          context.pop();
        }
        return;
      }
    }
    super.dispatch(request, response, dispatch);
View Full Code Here


      String template = panel.findTemplate(locale);
      if (template == null) {
        throw new ServletException("Cannot find template for panel " + panel.getName());
      }

      PanelsContext context = support.getOrCreateContext(request, locale);

      context.push(panel);

      try {
        if (doInclude) {
          doInclude(template, request, response);
        } else {
          doForward(template, request, response);
        }
      } finally {
        context.pop();
      }
     
      return true;
    }
    return false;
View Full Code Here

    if (panel != null) {
      String template = panel.findTemplate(locale);
      if (template == null) {
        throw new ServletException("Cannot find template for panel " + panel.getName());
      }
      PanelsContext panels = support.getOrCreateContext(request, locale);
      boolean include = !panels.isEmpty() || context.getResponse().isCommitted();

      panels.push(panel);
      try {
        RequestDispatcher rd = context.getContext().getRequestDispatcher(template);
        if (include) {
          rd.include(request, context.getResponse());
        } else {
          rd.forward(request, context.getResponse());
        }
      } finally {
        panels.pop();
      }

      return true;
    }
    return false;
View Full Code Here

  }

  public void testParam() throws ELException {
    HttpServletRequest request =
      (HttpServletRequest)pageContext.getRequest();
    PanelsContext panelsContext =
      support.getOrCreateContext(request, new Locale("", ""));
    PanelConfig panel = support.findPanelConfig("test", new Locale("", ""));
    assertNotNull(panel);
    panelsContext.push(panel);

    PanelsAccessor accessor = new PanelsAccessor(module);
    pageContext.setAttribute("panels", accessor.get(request));
    assertEquals("bar", evaluate(String.class, "${panels.param['foo']}"));
  }
View Full Code Here

  public class ParamAccessor extends DynamicMapAccessor {
    /**
     * Lookup parameter.
     */
    protected Object get(HttpServletRequest request, Object key) {
      PanelsContext context = support.getContext(request);
      ParamConfig param = context.lookupParamConfig(key.toString());
      if (param == null) {
        throw new AccessException("Unknown panel parameter '" + key + "'");
      }
      if (!param.isDefined()) {
        throw new AccessException("Undefined value for panel parameter '" + key + "'");
View Full Code Here

TOP

Related Classes of de.odysseus.calyxo.panels.PanelsContext$ItemEntry

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.