问题标签 [scalatra]
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.
json - 使用 json4s 在 Scala 应用程序中生成 json
我正在尝试使用 json4s 在 Scala 应用程序中生成 JSON。相当直截了当,这是我在我的 Scalatra 应用程序中汇总的一些示例值:
在我的控制器中,我只有:
然而,我在浏览器中看到的输出如下:
任何线索_1
和_2
钥匙来自哪里?我期待的是这个输出:
mongodb - 当mongodb出现错误时如何从salatDAO获取None选项
基本上当插入一个新用户时,它返回 Some("ObjectId of new user") 这正是我期望它做的。但是,当我在电子邮件上放置索引时,我会收到重复键错误。我想要的不是得到重复键错误,而是得到 None 选项,就像我从集合中读取并且没有匹配的文档时所做的那样。
当 MongoDB 返回重复键错误时,如何获得 None 选项?
或者我应该如何处理我回来的这个错误?
scala - Scala:从字符串替换换行符、制表符和返回序列
我有一个 HTML 字符串,我将其复制粘贴到一个类似于以下内容的 String 对象中:
这里的问题是,当我在 Web 浏览器的上下文中将此字符串显示为 JSON 时,输出会显示文字\n
和\t
字符,如下所示:
是否有可能从 Scala 中的字符串输出中删除所有这些转义序列?
scala - 为什么可以在 Scalatra 中编写 HTML?
举个例子:
这是DSL吗?我想知道这是如何工作的机制。
scala - Scalatra:从另一个 Servlet 生成反向路由
用例
我正在编写一个简单的 REST api 来评估 Scalatra 是否满足我的需求。我有两个控制器(servlet?),/items/*
安装/categories/*
在ScalatraBootstrap
. 我希望GET
请求/items/1
返回如下内容:
我找不到生成/categories/1
. http://www.scalatra.org/2.2/guides/http/reverse-routes.html中的最后一部分看起来像我需要的,除了它没有描述跨 servlet 使用该功能的方法。
我试过的
- 为负责 的 servlet 创建了一个伴随对象
/categories
,并尝试Route
从那里使用 。我收到消息异常requirement failed: routeBasePath requires the servlet to be initialized
。这让我相信有一些概念上的限制阻止了这种用法,但是文档说它的ScalateUrlGeneratorSupport
作用远不止于此。我很困惑。 - 复制粘贴https://github.com/ornicar/scalatra/commit/625f8a287d466122d8a0774b71188a62ec07ecb6中删除的特征,将其混合到
items
servlet 中,尝试根据路由名称获取路由。结果异常:scala.runtime.BoxedUnit cannot be cast to org.scalatra.Route
为了明确这个问题:有没有办法使用一个 servlet 中的命名Route
来在另一个 servlet 中生成 URL?
(请随时更正我的术语,我刚从 Python 领域回来)
scala - scala.Some 不能转换为 java.lang.String
在此应用程序中,我收到此错误:
尝试此操作时:
x.email 是一个选项[字符串]
编辑:我知道我在这里处理不同的类型,我只是想知道是否有更简洁的方法可以不使用 None 然后
序列。因为我出于 JSON 目的将 x.email 转换为字符串,所以 JSON 对象将处理一个空字段,我不必明确地处理它。抱歉不清楚!!
scala - scalatra 中的 HEAD 请求
我是一个scalatra新手,也许我的问题没有意义,但它是:
如何判断 scalatra 中的请求是 GET 还是 HEAD 请求?
基本上我有一个 REST api,它使用 GET 来获取一个项目,并使用 HEAD 来测试该项目是否存在。我没有看到为 HEAD 请求编写处理程序的明显方法。
database - Slick table Query:识别值有问题
谁能告诉我为什么在这种情况下:
Scala 识别 userId,但在这种情况下:
不是吗?(如,“=>”右侧的 userId 在第二种情况下被识别,但不是第一种)
用户是一个光滑安装的数据库,如下所示:
scala - 为什么 Scalatra 警告我关于 log4j
我试图让某种类型的日志记录在 Scalatra 中工作。我只是按照这里的说明http://www.scalatra.org/2.2/guides/monitoring/logging.html。当我用 启动container:start
后运行时sbt
,我在控制台中看到以下内容,多条看起来不完全正确的消息:
据我所知,我正在尝试使用logback
,但稍后会加载一些log4j
内容。这不是我所期望的行为,但这是我所看到的。
从多个绑定到 log4j 警告(我没有在这个应用程序的任何地方添加 log4j):
不完全确定问题出在哪里。我只想能够:
- 将一些调试语句记录到 STDOUT(假设它会进入我开始 sbt 的术语)
- 将一些调试语句记录到我可以简单地尾随的文件中
我的依赖项在 build.scala 中如下所示:
这里是否有可能也需要 log4j 并且覆盖 logback?
是否也可以指示 sbt 将 log4j 从该项目中完全排除?我找不到需要它作为依赖项的内容,但它应该使用 logback。
database - Slick:使用 Column[Int] 值的困难
我在这里对我最近提出的另一个 Slick 问题(Slick table Query: Trouble with identify values)进行了跟进。请多多包涵!!我是数据库新手,Slick 在文档方面似乎特别差。无论如何,我有这张桌子:
第一部分
我正在尝试使用此功能进行查询:
其中“where”是搜索查询列表 //ex. ("userId", "1"),("userName", "Alex") "foo" 是一个测试相等性的辅助函数。我遇到了类型错误。
x.userId 的类型为 Column[Int]。如何将其作为 Int 进行操作?我试过铸造,例如:
但我也遇到了麻烦。如何处理 Slick 返回类型?
第二部分 有没有人熟悉强制转换功能:
def * = userId ~ userName <> (User, User.unapply _)
? 我知道这个问题有一些很好的答案,最值得注意的是:scala slick method I can't understand so far and a very similar question here: mapped projection with companion object in SLICK。但是任何人都可以解释为什么编译器会响应
对于那一行简单的代码?