在 JSF 子视图中混合 HTML 和 JSF

2023-12-30

我今天遇到的问题是关于使用 JSF 处理包含的 JSP 中的 HTML。 情况如下:我在 RAD 上使用 IBM 的 JSF 1.2 和 Websphere v6.1 我有一个自定义组件(来自公司层)来使用选项卡。 为了获得更清晰的代码,我只想将每个选项卡的 JSF 代码分离到一个单独的 JSP 中,这样, main.jsp :

<customTag:tabComponent>
<jsp:include page="/jsp/workflow/tab1.jsp"></jsp:include>
<div align="right">
    <customTag:switchToTab title="Next" tabValue="2"></customTag:switchToTab>
</div>
</customTag:tabComponent>

还有我的 tab1.jsp :

<!-- Taglibs declared here -->
<f:verbatim>
<div id="myDivId">
    <fieldset>
        <legend>myLegend</legend>
        <h:outputText value="#{myBean.someContent}"></h:outputText>
        <!-- HERE are a lot of JSF components, selectItems, inputText... -->
    </fieldset>
</div>
</f:verbatim>

因此,JSF 组件已被处理,但 HTML 似乎是在 JSF 生成的 HTML 之外处理并出现在之后。就像是

<table>
    <!-- generated content -->
</table>
<div id="myDivId">
...

尽管表格应该位于 div 内。我尝试使用<f:verbatim>标记不同的方式,唯一的解决办法就是包围<div> and </div>通过逐字的开始和结束标记,这很脏并且让 Websphere 变得疯狂。

谷歌了一下没有找到相关的信息,请问你们有遇到同样的问题吗?是否可以找到一个干净的解决方案,或者我是否必须将所有代码包含在同一个 JSP 中?提前致谢。


首先,这可以被认为是遗留的 JSF 1.0/1.1 行为。这f:verbatim确实需要将模板文本放入 JSF 组件树中。但是,那f:verbatim完全是多余的,因为 2006 年 JSF 1.2 的新视图处理程序会自动将任何模板文本放入其中f:view进入组件树。那么,你是really使用 JSF 1.2? Websphere 6.1 附带内置的 JSF 1.1 库,升级到 1.2 并不像仅将库放入/WEB-INF/lib.

至于你的实际问题,你需要换行only模板文本与f:verbatim,不值得的 JSF 组件。因此,以下内容应该有效:

<f:verbatim>
    <div id="myDivId">
        <fieldset>
            <legend>myLegend</legend>
</f:verbatim>
<h:outputText value="#{myBean.someContent}"></h:outputText>
<!-- HERE are a lot of JSF components, selectItems, inputText... -->
<f:verbatim>
        </fieldset>
    </div>
</f:verbatim>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 JSF 子视图中混合 HTML 和 JSF 的相关文章

随机推荐

  • 授权策略始终返回 403(禁止)-MVC/API

    我创建了一个 API 带有 EF Core 的 Net Core 2 其端点用于检索某些角色 我将 ASPNetIdentity 集成到我的项目中 并使用 AspNetRoles 和 AspNetRoleClaims 在我的例子中 调用 A
  • 当我们不关心结果时异步 URLfetch? [Python]

    在我为 GAE 编写的一些代码中 我需要定期对另一个系统上的 URL 执行 GET 本质上是 ping 它 并且我不太关心请求是否失败 超时或成功 因为我基本上想要 即发即忘 而不是通过等待请求来减慢我自己的代码速度 所以我使用异步 url
  • 在 asp.net 应用程序中将自动生成的 pdf 附加到电子邮件

    我有一个非常具体的要求 在我的网络应用程序中 我必须根据数据库值和电子邮件正文生成 pdf 发票 我可以使用 SMTP 轻松发送此信息 效果非常好 但是 问题是我们不能依赖系统总是完美的 而这是一张发票 所以 我们需要打开默认的邮件客户端而
  • 更改 DialogFragment 中 ProgressDialog 的字体

    我想知道是否可以更改字体ProgressDialog的消息显示 内DialogFragment public class LoadFromCloudTaskFragment extends DialogFragment Override p
  • 如何在通话开始时播放音频文件?

    我正在从我的应用程序发起语音呼叫 现在我希望当另一端的用户接听电话时 我想播放录制的音频文件 这件事该怎么办呢 请帮忙 我已经找到了解决方法 当手机状态变为TelephonyManager CALL STATE OFFHOOK 这可确保另一
  • Rails 4 中的 Jquery 文件上传

    大家好 我正在关注 Jquery 文件上传的视频教程 http railscasts com episodes 381 jquery file upload http railscasts com episodes 381 jquery f
  • 获取列表中的所有递归结果

    我正在学习 python 递归 为了练习 我给出了一个任务来查找列表的所有子集 例如函数 subset 1 2 should return 1 2 1 2 我可以让我的函数在递归的帮助下打印这些结果 def subset List prin
  • Basler Pylon 4 SDK 和 OPENCV 2.4.9,CPylonImage 到 Mat

    我目前正在使用 Basler 相机 acA1300 30gc 开发机器视觉应用程序 为此 我正在使用 Basler Pylon 4 和 OPENCV 版本 2 4 9 但出现了一些问题 我正在尝试使用 Pylon SDK 捕获图像并将其转换
  • 获取当前活动的应用程序名称

    我想在计时器停止时获取当前活动应用程序的名称 记录 20 秒后 它应该显示当前活动的应用程序名称 我尝试了一些代码 你可以在这里看到 但计时器停止后它没有向我显示任何内容 C code public class Win32wrapper p
  • MediaPlayer 中的 IllegalStateException

    这是我的代码 if player null if player isPlaying player pause player stop player release 这是错误 FATAL EXCEPTION main java lang Il
  • Firebase 数据库每次读取时都返回 null

    我有一个类从数据库读取数据 但它总是返回null 这是java文件 public class UserActivity extends AppCompatActivity TextView textView private Firebase
  • 通过重定向进行基本身份验证

    我有一个需要基本身份验证标头的网络服务 但是 当我使用它来调用它时 var header Authorization Basic CreateBasicHttpAuthenticationHeader login password webR
  • 打乱已排序的数组

    如果给定一个已排序的数组 我们可以使用什么算法来创建一个与已排序数组具有相同元素的输出数组 但元素应该随机打乱 我正在寻找一种复杂度为 O n 的算法 Collections shuffle List has an O n 时间复杂度 您可
  • 如何在 Docker 容器中运行 Python Flask [重复]

    这个问题在这里已经有答案了 我正在尝试在 docker 容器内运行 Python Flask Web 服务器 但无法从外部连接到 Flask 服务器 我做了什么 我创建 temp HelloFlask py from flask impor
  • 使用 Phonegap 应用程序执行 ajax 请求时出现问题

    我正在尝试使用 Phonegap 和 jQuery 创建一个简单的 RSS 阅读器 我正在关注这个教程 http visualrinse com 2008 09 24 how to build a simple rss reader wit
  • 来自 Android 的 HTTP 补丁请求

    我正在尝试从 Android 应用程序发出 HTTP 补丁请求 但无法弄清楚 HTTPUrlConnection 似乎不支持 PATCH HttpPatch 似乎不在 Android 包含的库中 link http hc apache or
  • Microsoft 团队获取来电号码

    我们有一个非常简单的用例 当团队中的用户被呼叫时 我们需要的只是呼叫者的号码 我们的想法是将这个数字传递到我们的后端系统并弹出相关信息 如果存在 所以只需要一种方法来读取呼叫者的号码 我查看了通话记录 API 但他们会提供已经发生的通话的信
  • MDX DRILLTHROUGH 失败但 select 可以成功执行

    我有以下 MDX 查询 它在执行时成功返回度量 SELECT Measures Closed Quote OE Retail ON COLUMNS FROM Sales WHERE Posting Date Date YQMD Month
  • sql服务器+VB 6.0

    我在 vb 6 0 中创建了一个数据库项目 我已经在 sql server 2000 中创建了数据库 我使用 adodc 和 odbc 连接到数据库 我想将我的 sql 服务器保留在一个系统中 将我的 vb 6 0 应用程序保留在另一个系统
  • 在 JSF 子视图中混合 HTML 和 JSF

    我今天遇到的问题是关于使用 JSF 处理包含的 JSP 中的 HTML 情况如下 我在 RAD 上使用 IBM 的 JSF 1 2 和 Websphere v6 1 我有一个自定义组件 来自公司层 来使用选项卡 为了获得更清晰的代码 我只想