问题标签 [spark-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
524 浏览

java - Spark 框架 CSRF 保护

我正在使用 Spark 框架开发 REST 服务。到目前为止,我还没有发现任何实施 CSRF 保护的可能性。

是否有可能使用集成功能实现 CSRF 保护?还是我必须使用Pac4j等外部模块?

0 投票
0 回答
1199 浏览

freemarker - 当我尝试显示连字符时,Freemarker 出现 InvalidReferenceException

我在 2.5.5 版中将 Freemarker 与 Spark 框架一起使用:

我正在尝试使用换行符和连字符保存文本区域并显示值,但我收到一个我不清楚的错误。

例如,要保存,我正在使用:

并显示我保存的内容(来自visualizar.ftlfreemarker 文件):

这适用于大多数情况,包括显示换行符。但是,如果我尝试在 textarea 中添加连字符并在某些文本之前添加一个空格,我会收到此错误(在input或中<pre>):freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:131)

为了更清楚,我将展示一些有效的文本和一些显示错误的文本:

  • 成功:sometext
  • 成功:sometext-sometext
  • 成功:sometext- sometext
  • 错误:sometext -sometext
  • 错误:sometext - sometext

我想知道如何预防这个问题。错误并不清楚问题所在。

谢谢!

完整日志错误:

0 投票
1 回答
4696 浏览

java - Freemarker 模板错误:null 或缺失

以上是我正在开发的 Spark 应用程序的主要方法。它涉及两个模板,loginform.ftl 和 result.ftl。Loginform.ftl 是一个简单的 html 表单,它向服务器发送一个 post 请求,由上面代码中的 post 处理程序处理。当我填写表格并发送请求时,我收到 500 内部服务器错误。该错误与我现在用来测试模板制作的 result.ftl 有关。我将 HashMap 传递给 result.ftl 模板。我得到的错误是:

我认为这意味着在生成模板时数据为空,但很明显不是。我不知道这正在发生。我的模板文件如下。
登录表单.ftl

结果.ftl

0 投票
1 回答
602 浏览

pagination - 使用 Spark 框架在 FreeMarker 中进行简单分页

我使用带有 FreeMarker 的 Spark 框架实现了一个简单的博客。我需要实现分页以便每页只显示 5 个条目,并且没有必要显示页码,带有下一个和上一个按钮就可以了。但是,我什至不知道从哪里开始分页。这是我当前显示所有条目的代码:

另外,这里是 Spark 框架中的后端代码:

任何帮助将不胜感激,在此先感谢!

0 投票
1 回答
779 浏览

java - 如何在 Spark 框架中获取所有公开的路由

在 java spark web 框架中,路由定义为

});

在我的应用程序中,我定义了多个路由。有什么办法可以获得应用程序的所有公开路由?

0 投票
0 回答
753 浏览

java - 使用 java 和 spark 处理 API 路由异常

我有一个带有 POST、PATCH、GET 和 DELETE 路由的 API。为了捕捉各种可能的错误,我不得不在其中的每一个中创建 try catch 块。我目前正在调用错误类

StandardError standardError = new StandardError("415");

问题是每个路由方法都有大量的复制。

spark的异常映射部分描述了以下捕获异常的途径。问题是这只捕获了一个特定的异常,我需要捕获很多。

我是否需要为每个异常创建一个新的异常路由,还是可以使用 处理所有错误get("/throwexception", (request, response) -> {

0 投票
1 回答
751 浏览

java - Spark:删除 Content-Type 标头

我正在尝试删除 Spark 中的 Content-Type 标头。null当我尝试将其设置为使用typeorheader方法时,这似乎是不可能的。它只是默认为text/html.

0 投票
0 回答
346 浏览

java - Spark 框架:如何添加服务器停止侦听器

根据这个问题,可以将侦听器添加到 Spark WS,以便在线程完成执行时运行已初始化但尚未启动的线程。

我想部署一个简单的 Web 服务,它应该作为 JRE 应用程序(无应用程序容器)从控制台运行,并且有一个小问题:在启动时它必须初始化资源,并且在服务器停止时它必须关闭它们。使用上面的参考,如果我在 main 方法中添加一个关闭钩子,代码将如下所示:

不幸的是,这并不像预期的那样:连接池只会被初始化一次,并且它的资源只会被释放一次,这就是当虚拟机正常终止时(此时 SIGKILL 之类的情况无关紧要)。

这可以做到吗?

0 投票
1 回答
2020 浏览

java - Better way to create a web application with Java and Vue

I'm starting to get into web development a little more. Currently I use the Spark Framework along with Vue for the few apps I've made. While this certainly works it's not ideal.

The project is built with Maven (and NPM for Vue) and the build process looks something like this.

  1. Maven packages the Spark Framework Java application
  2. Maven (with the frontend-maven-plugin) downloads node/npm and builds the Vue frontend
  3. Maven copies the compiled resources into the jar as static assets

So the filesystem looks something like this

/src/main/java (Spark Framework)

/src/main/resources (Vue)

This leads to a couple of annoyances.

  1. Everything is in one repository. Ideally I'd be able to have a separate repo for each layer of the project (One for Java, one for Vue)
  2. Development workflow isn't ideal. If I just want to test the Java part of the app, I still spend time compiling the frontend (Vue)
  3. A minor issue, but while working in an IDE, I'm dealing with deeply nested folders. Anytime I want to edit the frontend, my folder structure looks something like /src/main/resources/project-vue/

Here's one of my projects that uses this model

So my question is: What's a better way to structure my application?

0 投票
0 回答
377 浏览

server-sent-events - Spark REST 中的 SSE 实现

寻找一个生成文本/事件流的 GET rest api 的简单示例。如何跟踪听众,如何在 spark 中使用发射器?基本上,我如何使用 spark 框架(服务器端代码)实现 SSE