JSF + JSON:在 servlet 中输出“纯”文本?

2023-12-02

我正在尝试使用 Mootools (请求.JSON)与 JSF 一起 - 主要是因为我前段时间在 CakePHP 中编写了一个类似的应用程序,并且希望重用大部分 JS 部分。

有什么办法可以返回吗纯文本(“application/json”) 使用来自无标记 Facelet 之类的请求?

我想出的唯一解决方案是使用HttpServlet并将其注册到 web.xml 中的服务 URL。这种方法有效并且确实返回一个没有任何标记的文件,但我宁愿使用 Spring 注入的 ManagedProperties 而不是仅限于 WebApplicationContextUtils。

我错过了什么还是这是推荐的方式?


有一种方法。但这是丑陋的,本质上是对 JSF/Facelets 的滥用,因为使用了错误的工具来完成工作。

E.g.

<ui:composition
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <f:event type="preRenderView" listener="#{bean.renderJson}" />
</ui:composition>

with

public void renderJson() throws IOException {
    FacesContext facesContext = FacesContext.getCurrentInstance();
    ExternalContext externalContext = facesContext.getExternalContext();
    externalContext.setResponseContentType("application/json");
    externalContext.setResponseCharacterEncoding("UTF-8");
    externalContext.getResponseOutputWriter().write(someJsonString);
    facesContext.responseComplete();
}

更好的是使用 JAX-RS Web 服务。我不确定 Spring 托管 bean 是否可注入,但新的 Java EE 6 CDI 允许您注入@Named到处都是豆子@Inject,即使在一个简单的@WebServlet.

也可以看看:

  • Servlet 与 RESTful
  • 如何使用 Servlet 和 Ajax?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSF + JSON:在 servlet 中输出“纯”文本? 的相关文章

随机推荐

  • JavaScript 中 && 简写的解释

    使用 jQuery 的水印插件 我尝试 jslint 并最小化函数 但我遇到了以前从未见过的语法 其中存在确实应该有赋值或函数调用的表达式 function fn watermark function css text return thi
  • Neo4j 2 Cypher 模糊搜索

    我正在使用 Neo4j 2 REST API 并且能够添加插件 我的数据库中有一个实体 其标签为 实体 名称为 英国 如何执行模糊搜索来查找该实体 我希望能够使用以下查询找到它 United Kingdom 英国 英国 So the
  • 如何禁用 Nuxt3 默认加载指示器?

    我已经查看文档和谷歌搜索很长时间了 由于某种原因 我似乎无法弄清楚如何禁用默认的 Nuxt3 加载指示器 有谁知道如何处理这个问题 当我刷新 路径上的页面时 它只会出现一瞬间 因此页面显示的是index vue页面 附上图片以供参考 尝试设
  • 如何使用与主脚本在同一文件中定义的 Moose 类?

    以下脚本p pl工作正常 use feature qw say use strict use warnings use lib use P1 my obj P1 gt new name gt John say The name is obj
  • Rmarkdown 中使用 apsrtable 的多个 lm() 模型表

    Goal 呈现使用创建的多个模型的结果lm 函数 一起放在一个格式良好的表格中 该表将在 Rmd 文件中生成并输出到 PDF 文档 建议的解决方案 In 使用 R 和 RStudio 进行可重复的研究 有一个例子使用apsrtable 并排
  • 为 java ejb Web 服务启用 https

    我正在使用 ejb 3 和 glassfish 3 1 1 开发一个网络服务 我正在使用 Netbeans 7 0 想知道如何为此 Web 服务在端口 8181 上启用 https 我不需要任何身份验证方法 只需通过 https 保护通信即
  • 使用 bootstrap 时模态不显示

    每当我按下按钮时 模式就不会显示 我尝试了很多事情 甚至创建了一个 custom js 来将此代码放入 myModal modal show 但就是不行 我哪里做错了 这是代码
  • 如何在 Inno Setup 中制作一个按钮或文本,单击时打开网页

    如何在 Inno Setup 安装程序中制作一个按钮或文本 单击时会打开一个网页 要打开网页 请使用 procedure OpenBrowser Url string var ErrorCode Integer begin ShellExe
  • 具有高级绘图函数的多个绘图,尤其是plot.rqs()

    我正在尝试并排绘制两个回归摘要和一个居中标题 每个回归摘要由以下方式生成plot rqs 总共有 9 个地块 我尝试过使用par mfrow c 1 2 已经 但正如我从 Paul Murrel 2006 的书中了解到的 高级函数如plot
  • 向 app.config 添加了新的应用程序设置,但 MSI 不会安装它(不会覆盖)

    我们最近向旧版 winforms 应用程序 Net 4 6 1 的 app config 日志服务器的 URL 添加了新的应用程序设置 不是用户设置 旧版本是 1 0 3 我们将所有程序集的版本更改为 1 0 4 并在安装项目 Visual
  • 我的 Android 应用程序在 Play 商店中显示与 Android 4.4.4 Moto E 不兼容

    我的 Android 应用程序在 Google Play 商店中显示与 Android 4 4 4 Moto E 不兼容 我尝试了很多方法 请问如何解决这个问题 你能帮我一下吗 提前致谢 如果您使用 Google Maps 那么为了支持 M
  • 您可以重命名“选项”标签吗? (Chrome 扩展)

    我试过这个 https developer chrome com extensions options html并制作了一个选项页面 因此 在我的扩展图标下添加了一个选项 名称为Option 我的问题是有没有办法重命名Option并改变它像
  • 将多个列表写入 csv Python

    我正在尝试编写一个将多个列表写入单个 csv 文件的函数 并且我能够获取要写入的列标题 但无法获取任何数据 我的数据位于与此类似的列表中 92 3801 2 22 4 第二个是 3 0 2 23 5 我正在寻找有关此的指导 谢谢你 impo
  • 如何编写批处理文件来切换网络适配器?

    在我的工作中 有一个可以连接的公司内部网 以及一个 Wifi 网络 但是 公司政策规定我们不能在一台计算机上同时连接到两个网络 不过 我需要在不同的时间使用任一网络 而我能够做到这一点的唯一方法是转到 控制面板 的 网络 部分中的 更改适配
  • 为什么 time.sleep 不能像打印结束参数一样工作?

    我正在尝试使用 time sleep 在打印语句之间暂停 import time def test print something end time sleep 1 print and end time sleep 1 print some
  • 使用淘汰赛根据下拉列表中选定的值隐藏/显示问题

    好吧 我是一个淘汰赛菜鸟 很难解决一个非常简单的问题 我有一个与淘汰的 observableArray 相关的下拉列表 还有一个与另一个 observableArray 相关的问题列表 问题应根据下拉列表的选定值隐藏 显示 在查看小提琴之前
  • R:具有特定变量范围的多元线性回归[重复]

    这个问题在这里已经有答案了 看起来很简单 但我不知道如何用 R 编写它 我有一个包含约 100 个变量的数据框 df 我想在作为我的第一个变量 Y 的响应和作为回归量的变量 25 到 60 之间进行多元回归 问题是我不想写每个变量名称 例如
  • 如何获取实时更新?

    我经常在 Facebook 上聊天 而且我越来越喜欢编码 所以我尝试创建一个聊天脚本 这里是 http wooflux co cc ChatSystem 1 1 ChatSystem 1 1 你试试看 但它只是一个测试版 因此还存在一些错误
  • 为什么这个 JPA 2.0 映射在 Eclipse/JBoss Tools 中给我一个错误?

    I have the following situation source kawoolutions com JPA 2 0 映射 仅考虑 Zip 和 ZipId 类可能就足够了 因为这似乎是错误的来源 Entity Table name
  • JSF + JSON:在 servlet 中输出“纯”文本?

    我正在尝试使用 Mootools 请求 JSON 与 JSF 一起 主要是因为我前段时间在 CakePHP 中编写了一个类似的应用程序 并且希望重用大部分 JS 部分 有什么办法可以返回吗纯文本 application json 使用来自无