当前位置: 首页 > 知识库问答 >
问题:

Primefaces 6.0对话框框架和框架集

满自明
2023-03-14

我们在WebLogic11g下使用JSF2.1+PrimeFaces6.0+PrimeFaces-Extensions6.0.0、mojarra 2.1.7。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
    <h:form>
        <p:commandButton value="View" icon="ui-icon-extlink" actionListener="#{dfView.viewCars}" />
    </h:form>
</h:body>
</html>

单击p:commandButton后,DOM inspector显示对话框已在正文和html标记之外创建,如下一个图像所示:

在正文外部呈现的对话框

如果我们使用相同的代码(没有帧)创建一个新的.xhtml,并单击p:commandButton,结果与预期一样,并且对话框打开:

package test;

import java.util.HashMap;
import java.util.Map;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;

import org.primefaces.context.RequestContext;
import org.primefaces.event.SelectEvent;

@ManagedBean(name = "dfView")
public class DFView {

public void viewCars() {
    final Map<String,Object> options = new HashMap<String, Object>();
    options.put("resizable", false);
    options.put("appendTo", "@(body)");
    RequestContext.getCurrentInstance().openDialog("viewCars", options, null);
}

public void viewCarsCustomized() {
    final Map<String,Object> options = new HashMap<String, Object>();
    options.put("modal", true);
    options.put("width", 640);
    options.put("height", 340);
    options.put("contentWidth", "100%");
    options.put("contentHeight", "100%");
    options.put("headerElement", "customheader");

    RequestContext.getCurrentInstance().openDialog("viewCars", options, null);
}

public void chooseCar() {
    RequestContext.getCurrentInstance().openDialog("selectCar");
}

public void onCarChosen(final SelectEvent event) {
    final Car car = (Car) event.getObject();
    final FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Car Selected", "Id:" + car.getId());

    FacesContext.getCurrentInstance().addMessage(null, message);
}

public void showMessage() {
    final FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "What we do in life", "Echoes in eternity.");

    RequestContext.getCurrentInstance().showMessageInDialog(message);
}
}

ps.Primefaces 5.2中的相同代码适用于框架

共有1个答案

贺华容
2023-03-14

我正在使用PrimeFace6.0,我创建了一个对话框,也是一个内部确认对话框。我解决了我的问题与对话框被阻止和确认对话框也。

我在内部确认对话框中添加了下一段代码:

 类似资料:
  • 我想通过Remote tecommand操作打开一个对话框,并从页面后备bean中的中获取值。远程命令在页面加载时正确触发bb中的actionListener 使用此show Dialog方法也可以正确显示对话框: 在另一个Bean中: 问题是,我不知道如何聆听由以下事件引发的事件: 在PF示例中http://www.primefaces.org/showcase/ui/dialogFramewo

  • 我的目标是使用MFC创建一个无框架对话框,它是像图中所示的普通矩形,我对MFC应用程序有基本的了解。

  • 问题内容: 我已经开发了一个Spring / JPA应用程序: 服务,存储库和域层即将完成 。 该 所缺的只是层是网络层 。我正在考虑将Playframework 2.0用于Web层,但不确定是否可以 在Playframework 2.0类中注入/使用spring bean 。 这可能吗?如果可以,怎么办? 问题答案: 您可以。已针对Play 2.5.x更新: https://github.com

  • 许多的 PHP 开发者都使用框架,而不是重新造轮子来构建 Web 应用。框架抽象了许多底层常用的逻辑,并提供了有益又简便的方法來完成常见的任务。 你并不一定要在每个项目中都使用框架。有时候原生的 PHP 才是正确的选择,但如果你需要一个框架,那么有如下三种主要类型: 微型框架 全栈框架 组件框架 微型框架基本上是一个封装的路由,用来转发 HTTP 请求至一个闭包,控制器,或方法等等,尽可能地加快开

  • JSF2.2;PrimeFaces 5.3 我的目标是通过单击X按钮捕获用户关闭对话框,返回到父页面,以便刷新数据并更新表单。 我能够让p:remoteCommand调用DialogBean中的confirmAndCloseDialog()方法,但从未调用ParentBean中的onDialogReturn()方法。为什么不调用onDialogReturn?我能让它工作吗? 顺便说一句,如果用户以

  • **编程对象,Settings.UseJavaCP.Value=true。 Build.Scala