问题标签 [apache-velocity]
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.
amazon-web-services - 如何在 AWS API Gateway 中将对象转换为 JSON?
我有一些想要使用 API Gateway 转换的简单数据:
我能够循环数据:
预期结果是:
然而,实际结果是:
$elem
产生{id=1, name=Foo}
这似乎是对象被字符串化的内容。我想在 JSON 中使用它,我该如何实现?
我已经尝试过,$elem.stringify()
但这不起作用。$input.json($elem)
$elem.json()
json - 处理来自 aws apigateway 的嵌套集成响应
我有来自AWS Lambda的JSON响应到AWS API-GATEWAY,如下所示:-
在从 API Gateway 发送到客户端应用程序之前,我想修改响应中的密钥,如下所示:
在AWS ApiGateway 中,我们有映射模板来转换来自 Lambda 的响应并使用Apache Velocity离开 API Gateway 。我正在使用application/json格式来创建映射模板。
下面是我为转换编写的代码——
我在点击它后从 api 网关收到的响应如下 ---
我还是 API 网关的新手,所以如果有人能提供帮助,那就太好了。
arrays - 如何在 Velocity 模板语言 (VTL) 中获取数组中的最大值
使用速度模板语言(VTL),我想得到一个数组的最大值。我通过 Apache Velocity 的文档查看了很长时间,但找不到执行此操作的方法。
这是我的示例数组:
在这个例子中,我想得到34
java - 如何在 Intellij 中为 catch 语句更改速度模板
我想直接使用记录器在 catch 块中打印,例如:
Logger.getLogger(Example.class.getName()).log(Level.SEVERE, null, ex);
我在 Settings - File and Code Templates for Catch Statement body 中检查了 Velocity 模板
默认情况下,它与
尝试更改:
但是 Logger 语句出错了,而 NAME 没有按照指南中提供的那样选择类名称: https ://www.jetbrains.com/help/idea/file-template-variables.html
每当我使用 try-catch 块或尝试使用资源块来捕获时,想要自动将 logger 语句放入 catch 块中,这样它就有:
escaping - 从速度模板中删除括号(xml 转义)
我是速度模板的新手。我正在使用速度模板来解析 xml 格式的数据。使用以下代码获取用户 ID: $esc.xml("$!userDetails.userId).replaceAll("&#[0-9a-fA-F]+;","")
生成的输出:[ABC123] 异常输出:ABC123
有人可以在这里帮助我吗?另外,我用谷歌搜索了 apache velocity wiki,但没有找到。此外,如果提供一些 wiki 来获取更多信息会更好。
提前致谢!!
amazon-web-services - 如何在 AWS appSync 的 Apache Velocity 请求映射模板中操作字符串和数组
这是我第一次使用 VTL,所以如果我的代码很愚蠢,请更正我的代码。
我想要达到的目标
Graphql 架构:
默认响应模板:
使用默认响应模板,我得到的结果
我的请求模板
为了获得所需的输出,我更改了响应模板,因为我想循环从数据库获得的响应,并使用AWS 解析器映射文档中{city=}
给出的子字符串方法从字符串中删除,这就是我面临的地方问题。
我的回复模板
我得到的回应:
但是,当我使用该行#set ($tempCity = $city)
并注释掉它上面的行时,我得到以下响应:
这意味着$city
具有 value {city=jaipur}
,因此我想对其进行清理并将其添加($sanitisedListOfCities)
并作为响应返回。
但我得到null
的结果是子字符串方法。
那么如何清理来自 DB 的响应并返回它呢?
java - 在没有 Maven 的 Java 应用程序中使用 Apache velocity 1.7 或 2.0
有人可以详细说明在 Java 插件项目中使用 Velocity 模板引擎的步骤,而不使用 Maven 来构建和解析依赖项。
我想手动下载所需的插件/依赖项并将它们打包为我的插件的一部分。最后,我想要基于模板和一些日志文件生成渲染文件的最低限度的功能。我不是在寻找如何启动引擎、创建上下文、加载模板文件或创建文件。而是如何设置包含准备在 eclipse 中的插件开发环境中使用的速度引擎的环境。
我在网上找到的所有示例都建议使用 Maven 来解决依赖关系,这在我的情况下是不可能的,因为我的团队中有就地构建基础设施。
arrays - Veocity:如何在数组中查找值的频率,然后按频率顺序对值进行排序
我有任何速度数组也有重复值。我想创建一个具有唯一值的数组,其中所有值都根据它们在原始数组中的计数/频率进行排序。
例如:
pagelist数组具有页面名称,其中很少出现在该数组中多次出现。我需要一个具有唯一页面名称的数组,该数组按照它们在原始页面列表数组中的频率顺序进行排序。
任何人都可以帮忙吗?我试过了,但我的代码不起作用......
amazon-web-services - 在 Apache Velocity 模板语言中附加字符串变量
我想在 API Gateway 映射模板中构造查询字符串。我有这样的东西
这个想法是只要输入中提供了条目,就追加新字符串。
我的代码有效吗?还有其他方法可以追加吗?
java - 在 gradle 中导入 apache 速度会降级 HttpServletResponse
我有一个带有以下代码的spring boot项目:
在我添加速度依赖项之前一切正常:
现在我得到:
在 Eclipse 中:The method setCharacterEncoding(String) is undefined for the type HttpServletResponse
并且在gradle bootJar
:
所以我认为导入 HttpServletResponse 的库版本在某种程度上受到这些依赖项的影响。
我的春季启动插件是:id 'org.springframework.boot' version '2.3.2.RELEASE'
同一项目中的所有依赖项是:
从gradle dependencies
我可以看到速度集javax.servlet:servlet-api:2.3
但没有速度依赖javax.servlet
项根本不会出现在 gradle 依赖项中,所以我不知道之前的版本是什么。
通过注释掉,我可以确定implementation 'org.springframework.boot:spring-boot-starter-web'
如果速度不是依赖项,则提供 javax.servlet。(根据gradle dependencies
版本 2.3.2 incompileClasspath
和(n)
in implementation
)
我也试过gradle dependencyInsight --configuration compile --dependency javax.servlet:servlet-api
没有速度,但得到了No dependencies matching given input were found in configuration 'compile'
.
我认为这些问题非常接近,但我仍然不确定如何在 gradle 中进行:setCharacterEncoding questions
Apache
Velocity + Servlet 3.0