2017-07-25 98 views
0

儘管PrimeFaces渲染了另一個示例代碼(我從PrimeFaces網站借用了此代碼),但它並不渲染。PrimeFaces不會渲染

<ui:fragment xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    xmlns:p="http://primefaces.org/ui" 
    xmlns:c="http://java.sun.com/jsp/jstl/core" 
    xmlns:pe="http://primefaces.org/ui/extensions"> 


<div style="height:500px"> 
    <h:form> 
     <p:growl id="msgs" showDetail="true" /> 

     <p:dashboard id="board" model="#{dashboardView.model}"> 
      <p:ajax event="reorder" listener="#{dashboardView.handleReorder}" update="msgs" /> 

      <p:panel id="sports" header="Sports"> 
       <h:outputText value="Sports Content" /> 
      </p:panel> 

      <p:panel id="finance" header="Finance"> 
       <h:outputText value="Finance Content" /> 
      </p:panel> 

      <p:panel id="lifestyle" header="Lifestyle"> 
       <h:outputText value="Lifestyle Content" /> 
      </p:panel> 

      <p:panel id="weather" header="Weather"> 
       <h:outputText value="Weather Content" /> 
      </p:panel> 

      <p:panel id="politics" header="Politics"> 
       <h:outputText value="Politics Content" /> 
      </p:panel> 
     </p:dashboard> 

     <div style="clear:both" /> 
    </h:form> 
</div> 
</ui:fragment> 

這裏是它的.java部分: 我需要使用這樣的拖放儀表板,如果你不能找出問題,請給我推薦另一JS,我能做到這一點,但有例子。

package tr.com.solveka.plantmet.web.station; 

import java.io.Serializable; 
import javax.annotation.PostConstruct; 
import javax.faces.application.FacesMessage; 
import javax.faces.bean.ManagedBean; 
import javax.faces.bean.ViewScoped; 
import javax.faces.context.FacesContext; 

import org.primefaces.event.CloseEvent; 
import org.primefaces.event.DashboardReorderEvent; 
import org.primefaces.event.ToggleEvent; 
import org.primefaces.model.DashboardColumn; 
import org.primefaces.model.DashboardModel; 
import org.primefaces.model.DefaultDashboardColumn; 
import org.primefaces.model.DefaultDashboardModel; 
@ManagedBean(name="DashboardView") 
@ViewScoped 
public class DashboardView implements Serializable { 

    private static final long serialVersionUID = 1L; 
    private DashboardModel model; 

    @PostConstruct 
    public void init() { 
     model = new DefaultDashboardModel(); 
     DashboardColumn column1 = new DefaultDashboardColumn(); 
     DashboardColumn column2 = new DefaultDashboardColumn(); 
     DashboardColumn column3 = new DefaultDashboardColumn(); 

     column1.addWidget("sports"); 
     column1.addWidget("finance"); 

     column2.addWidget("lifestyle"); 
     column2.addWidget("weather"); 

     column3.addWidget("politics"); 

     model.addColumn(column1); 
     model.addColumn(column2); 
     model.addColumn(column3); 
    } 

    public void handleReorder(DashboardReorderEvent event) { 
     FacesMessage message = new FacesMessage(); 
     message.setSeverity(FacesMessage.SEVERITY_INFO); 
     message.setSummary("Reordered: " + event.getWidgetId()); 
     message.setDetail("Item index: " + event.getItemIndex() + ", Column index: " + event.getColumnIndex() + ", Sender index: " + event.getSenderColumnIndex()); 

     addMessage(message); 
    } 

    public void handleClose(CloseEvent event) { 
     FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Panel Closed", "Closed panel id:'" + event.getComponent().getId() + "'"); 

     addMessage(message); 
    } 

    public void handleToggle(ToggleEvent event) { 
     FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, event.getComponent().getId() + " toggled", "Status:" + event.getVisibility().name()); 

     addMessage(message); 
    } 

    private void addMessage(FacesMessage message) { 
     FacesContext.getCurrentInstance().addMessage(null, message); 
    } 

    public DashboardModel getModel() { 
     return model; 
    } 
} 

回答

0

你不能沒有使用html框架或模板運行ui:fragment

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:f="http://java.sun.com/jsf/core" 
     xmlns:ui="http://java.sun.com/jsf/facelets" 
     xmlns:p="http://primefaces.org/ui"> 
    <h:head> 
    </h:head> 
    <h:body> 
     <!--here your code--> 
     <div style="height:500px"> 
      <h:form> 
       ..... 
      </h:form> 
     </div> 
    </h:body> 
</html> 

How to use JSF Teampalte?