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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/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
Servlets 来自Servlet的JSF上下文_Servlets_Jsf 2 - Fatal编程技术网

Servlets 来自Servlet的JSF上下文

Servlets 来自Servlet的JSF上下文,servlets,jsf-2,Servlets,Jsf 2,我有一个JSF2控制器/bean/view,它是以标准JSF方式调用的。现在我需要从应用程序的遗留部分访问这个逻辑,该部分只知道servlet和URL参数 我考虑创建一个“loader.xhtm”视图,以弥补非jsf请求者和应用程序的jsf部分之间的差距。加载器将获取URL参数并将必要的JSF post发送到支持bean。这种方法的一个缺点是——它是一个额外的客户机/服务器跃点,一个编程重定向。然而,它很容易实现 但是还有更聪明的方法吗?我发现有人创建了servlet过滤器并显式创建了一个,启动

我有一个JSF2控制器/bean/view,它是以标准JSF方式调用的。现在我需要从应用程序的遗留部分访问这个逻辑,该部分只知道servlet和URL参数

我考虑创建一个“loader.xhtm”视图,以弥补非jsf请求者和应用程序的jsf部分之间的差距。加载器将获取URL参数并将必要的JSF post发送到支持bean。这种方法的一个缺点是——它是一个额外的客户机/服务器跃点,一个编程重定向。然而,它很容易实现

但是还有更聪明的方法吗?我发现有人创建了servlet过滤器并显式创建了一个,启动了生命周期和ViewRoot。从概念上讲,我知道正在做什么,但我不知道如何将其付诸实践。有没有人直接从servlet与JSF生命周期交互?有样品吗


提到这个概念。

JSF只是基本ServletAPI之上的抽象。在普通servlet中没有什么是不可能的,JSF本身也有可能。如果您详细说明您需要的
FacesContext
的具体用途(即您感兴趣的方法等),那么我们可以告诉您实现这一目的的简单servlet方法。谢谢@BalusC。我在两个JSF视图之间的导航是这样的:Page1执行操作=“#{controller.setupAndForward},它在回发过程中传递参数。setupAndForward()执行它的操作,并转发到下一个视图,它返回“Page2”。它在请求范围内传递一个bean,然后在下面的控制器中拾取该bean并提升到自定义视图范围。Page2是一个包含大量ajax的完整jsf/richfaces页面。现在,我想重用该代码,以便从遗留JSP访问它,该JSP具有指向我控制的servlet的链接。