Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 最大化portlet,自定义max.tpl_Jsf_Jsf 2_Liferay_Portlet - Fatal编程技术网

Jsf 最大化portlet,自定义max.tpl

Jsf 最大化portlet,自定义max.tpl,jsf,jsf-2,liferay,portlet,Jsf,Jsf 2,Liferay,Portlet,我正在开发一个JSFPortlet,它使用 javax.portlet.WindowState.MAXIMIZED 在表格发布后 方法: private void setPortletMaximized(boolean maximized) { FacesContext facesContext = FacesContext.getCurrentInstance(); javax.faces.context.ExternalContext externalContex

我正在开发一个JSFPortlet,它使用

javax.portlet.WindowState.MAXIMIZED
在表格发布后

方法:

private void setPortletMaximized(boolean maximized) {
    
    FacesContext facesContext = FacesContext.getCurrentInstance();
    javax.faces.context.ExternalContext externalContext = facesContext.getExternalContext();
    javax.portlet.PortletResponse portletResponse = (javax.portlet.PortletResponse)externalContext.getResponse();
    javax.portlet.ActionResponse actionResponse = (javax.portlet.ActionResponse)portletResponse;
    try {
        if(maximized){
            actionResponse.setWindowState(javax.portlet.WindowState.MAXIMIZED);
        }else {
            actionResponse.setWindowState(javax.portlet.WindowState.NORMAL);
        }
        
    } catch (WindowStateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

问题是我只需要为这个portlet使用一个定制的max.tpl。有没有办法从我的方法传递自定义布局?有可能吗?

所以您只想显示portlet的某些实例的面包屑。对吧?

在JSP或Facelet中,您可能会使用类似于以下代码段的内容:

<%@taglib prefix="liferay-ui" uri="http://liferay.com/tld/ui" %>

<liferay-ui:breadcrumb/>
就我个人而言,我非常喜欢嵌套的Portlets Portlet,但只针对一小部分问题。通常我更喜欢其他解决方案,比如使portlet可配置

然后


根据您的要求-也许您根本不需要嵌套。将portlet一个接一个地放在另一个上就足够了吗?

我不是Liferay布局方面的专家,但您可以通过编程更改布局。此外,还解释了如何更改所有portlet的布局,但我认为这不是您想要的?你能描述一下需求吗。布局模板是一项功能强大的功能,但它们很少用于自定义单个portlet。@TomášPiňos我需要一个具有特定功能的max.tpl本例中,breadcrumbs和其他没有特定功能的max.tpl,但具有特定功能的一个也可以被其他portlet使用。现在通过在portlet中创建面包屑解决了这个问题。这不是满足我们需求的最佳解决方案。
 ----------------------
| Breadcrumbs portlet  |
|----------------------|
| Your portlet         |
 ----------------------