返回顶部
首页 > 资讯 > 精选 >怎么用JavaServer Faces开发Web应用
  • 104
分享到

怎么用JavaServer Faces开发Web应用

2023-06-03 05:06:42 104人浏览 独家记忆
摘要

这篇文章主要介绍了怎么用JavaServer Faces开发WEB应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用JavaServer Faces开发Web应用文章都会有所收获,下面我们一起来看看吧。事

这篇文章主要介绍了怎么用JavaServer Faces开发WEB应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用JavaServer Faces开发Web应用文章都会有所收获,下面我们一起来看看吧。

事件处理。

XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 

下一步就是写事件处理器程序用来响应组件事件(诸如,选择了一个多选的选项或者点击一个按钮提交一个表单等等)。对于简单的应用,你还需指明当一个表单被提交或者访问一个超级连接时,哪一个页面会被访问。你可以实现ApplicationHandler 这个接口达到这个目的。下面的代码段显示了一个例子。这个例子中,我要看看FORMEvent是不是index.jsP中Submit按钮触发的。如果是, 组件树ID就会设置为与index.jsp页面相关联的组件树的ID。

代码5 BasicApplicationHandler.Java

import java.util.SortedMap;

import javax.faces.FacesException;

import javax.faces.component.UIComponent;

import javax.faces.context.FaceSCOntext;

import javax.faces.tree.Tree;

import javax.faces.tree.TreeFactory;

import javax.faces.FactoryFinder;

import javax.faces.lifecycle.ApplicationHandler;

import javax.faces.event.FormEvent;

import javax.faces.event.FacesEvent;

import javax.faces.event.CommandEvent;

import com.sun.faces.RIConstants;

public class BasicApplicationHandler implements ApplicationHandler{

  public boolean processEvent(FacesContext context, FacesEvent facesEvent) {

  if (!(facesEvent instanceof FormEvent) &&

  !(facesEvent instanceof CommandEvent)) {

    return true;

  }

  boolean returnValue = false;

  String treeId = null;

  if (facesEvent instanceof FormEvent) {

    FormEvent formEvent = (FormEvent) facesEvent;

    if (formEvent.getCommandName().equals("submit")) {

    treeId = "/hello.jsp";

    }

  returnValue = true;

  } else if (facesEvent instanceof CommandEvent) {

  CommandEvent commandEvent = (CommandEvent)facesEvent;

  UIComponent c = commandEvent.getComponent();

  if (c.getAttribute("target") != null) {

  treeId = (String)c.getAttribute("target");

  returnValue = true;

  }

  }

  if (null != treeId) {

  TreeFactory treeFactory = (TreeFactory)

  FactoryFinder.getFactory(FactoryFinder.TREE_FACTORY);

  context.setTree(treeFactory.getTree(context,treeId));

  }

  return returnValue;

  }

}

开发上下文监听程序。

如果你仔细看过部署描述文件web.xml,你会注意我声明了一个servlet上下文监听程序(BasicServletContextListener)。当应用启动时,servlet容器会创建一个servlet context listener的实例,并调用它的contextInitialized 方法;当应用关闭的时候,会调用它的contextDestroyed 方法。下面是一个servlet context listener的例子。

代码6 BasicServletContextListener.java

import javax.servlet.ServletContextListener;

import javax.servlet.ServletContextEvent;

import javax.faces.FactoryFinder;

import javax.faces.lifecycle.LifecycleFactory;

import javax.faces.lifecycle.Lifecycle;

import javax.faces.lifecycle.ApplicationHandler;

public class BasicServletContextListener implements ServletContextListener {

  public BasicServletContextListener() {

  }

  public void contextInitialized(ServletContextEvent e) {

  ApplicationHandler handler = new BasicApplicationHandler();

  LifecycleFactory factory = (LifecycleFactory)

   FactoryFinder.getFactory(FactoryFinder.LIFECYCLE_FACTORY);

  Lifecycle lifecycle =

  factory.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE);

  lifecycle.setApplicationHandler(handler);

  }

  public void contextDestroyed(ServletContextEvent e){

  }

}

完成响应页面。

当index.jsp中的表单被提交后,应用处理器程序启动,然后用户会被转发到响应页面hello.jsp。代码如下:

Code Sample 7: hello.jsp

 Hello

  <%@ taglib="" uri="Http://java.sun.com/jsf/html" prefix="h">

  <%@ taglib="" uri="http://java.sun.com/jsf/core" prefix="f">

Hello,<h:output_text id="userLabel"

    modelReference="UserNameBean.userName" />

关于“怎么用JavaServer Faces开发Web应用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“怎么用JavaServer Faces开发Web应用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: 怎么用JavaServer Faces开发Web应用

本文链接: https://lsjlt.com/news/232945.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么用JavaServer Faces开发Web应用
    这篇文章主要介绍了怎么用JavaServer Faces开发Web应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用JavaServer Faces开发Web应用文章都会有所收获,下面我们一起来看看吧。事...
    99+
    2023-06-03
  • 如何用JavaServer Faces开发Web应用
    本文小编为大家详细介绍“如何用JavaServer Faces开发Web应用”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何用JavaServer Faces开发Web应用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习...
    99+
    2023-06-03
  • Web应用开发TypeScript怎么使用
    这篇文章主要介绍“Web应用开发TypeScript怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Web应用开发TypeScript怎么使用”文章能帮助大家解决问题。一、什么是 TypeSc...
    99+
    2023-06-30
  • 在现有的jsf web应用中使用Oracle ADF Faces
        Oracle ADF Faces(adfFaces)提供了丰富的UI组件,可以简化你的web应用开发.可以通过学习示例代码来理解adfFaces的使用,示例代...
    99+
    2024-04-02
  • 如何开发Web应用
    这篇文章给大家分享的是有关如何开发Web应用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。静态资源访问在我们开发Web应用的时候,需要引用大量的js、css、图片等静态资源。默认配置Spring Boot默认提供...
    99+
    2023-06-05
  • 怎么使用Flutter开发简单的Web应用
    本篇内容主要讲解“怎么使用Flutter开发简单的Web应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Flutter开发简单的Web应用”吧!为 W...
    99+
    2024-04-02
  • SpringBoot怎么简化Web应用程序的开发
    Spring Boot 是一个开箱即用的微服务框架,它简化了 Spring 应用程序的开发过程。以下是 Spring Boot 简化...
    99+
    2024-04-09
    SpringBoot
  • Web应用开发TypeScript使用详解
    目录一、什么是 TypeScript二、TypeScript 简史三、为什么我们要使用TypeScript?TypeScript的附加功能四、大牛现身说法:五、你可能不知道的Type...
    99+
    2024-04-02
  • web开发中Vuex怎么用
    这篇文章给大家分享的是有关web开发中Vuex怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。什么是vuex说白了就是一个可以全局管理状态的东西,用官方的话说是它采用集中式存...
    99+
    2024-04-02
  • 使用PHP和AJAX开发响应式Web应用
    随着移动设备的普及和网速的提升,人们对于Web应用的需求越来越高,尤其是要求可以在多种尺寸的屏幕上流畅运行,同时可以提供丰富的交互体验。为了满足这个需求,Web开发者可以利用多种技术来开发响应式Web应用,其中PHP和AJAX是两个重要的工...
    99+
    2023-05-23
    PHP ajax 响应式设计
  • 基于RethinkDB +React Native怎么开发Web应用程序
    这篇文章主要讲解了“基于RethinkDB +React Native怎么开发Web应用程序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“基于RethinkDB +React Native怎...
    99+
    2023-06-17
  • 怎么用HTML5开发移动web
    这篇文章将为大家详细讲解有关怎么用HTML5开发移动web,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   一、移动web开发现状:   当下人们使用频率最高的设备...
    99+
    2024-04-02
  • 怎么用Python进行web开发
    本篇内容主要讲解“怎么用Python进行web开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python进行web开发”吧!Python 开发是一种简单易学,功能强大的解释型编程语言,...
    99+
    2023-06-17
  • 【斗医】【3】Web应用开发20天
    在上面提及异常的中英文从资源文件中读取,若读取失败需要日志记录,所以使用网上正在闹腾的Logback来记录。关于Logback与Log4j这里不做评判和说明,所有疑问可以请教谷歌。一、Logback的使用前期准备1、在官网http://l...
    99+
    2023-01-31
    Web
  • 怎么开发一个渐进式Web应用程序PWA
    小编给大家分享一下怎么开发一个渐进式Web应用程序PWA,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!要求要开始学习本教程,您必须安装以下软件:node 8.9 ...
    99+
    2023-06-15
  • 云开发-web应用中使用数据库
    如何在 web 应用中使用数据库 随着云时代的到来,云开发有着独特的优势相对于传统开发,从数据库而言,cloudbase 提供的云数据库真的很方便,本文就以一个简单的 todolist 小例子来讲解一下如何在 web 应用中使用云...
    99+
    2016-12-11
    云开发-web应用中使用数据库
  • 使用Docker开发python Web应用的案例
    小编给大家分享一下使用Docker开发python Web应用的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本文中,我将尝试展示用Docker开发pytho...
    99+
    2023-06-07
  • Python 中如何使用 Spring 开发 Web 应用?
    Python 是一种高级编程语言,而 Spring 是一种常用的 Java 框架,两者的结合可以实现高效、可靠的 Web 应用程序开发。本文将介绍如何在 Python 中使用 Spring 框架开发 Web 应用程序,包括以下方面: Sp...
    99+
    2023-11-11
    spring linux api
  • Flutter中的Web应用程序开发:构建现代Web应用程序
    作者:禅与计算机程序设计艺术 Flutter 中的 Web 应用程序开发:构建现代 Web 应用程序 作为人工智能专家,程序员和软件架构师,CTO,我今天将为大家分享有关 Flutter 中 Web...
    99+
    2023-09-23
    自然语言处理 人工智能 语言模型 编程实践 开发语言 架构设计
  • Python web开发框架Pyramid怎么用
    要使用Python web开发框架Pyramid,你需要按照以下步骤进行操作: 安装Pyramid:使用pip命令安装Pyram...
    99+
    2023-10-23
    Python Pyramid
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作