问题标签 [lagom]

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 投票
3 回答
695 浏览

angularjs - 为 Lagom Java 启用 CORS 过滤器

我遵循了跨域资源共享的说明,以便从 localhost:3000(我的 Angular 前端正在运行的地方)访问 localhost:9000(我的微服务正在运行的 Lagom GateWay)。但我仍然面临:

有没有人有一个启用 CORS 的示例或项目在那里工作?

0 投票
1 回答
567 浏览

scala - Lagom 中的多部分表单数据

我想要一个接收项目对象的服务,该对象包含;名称、描述、价格和图片。

  1. 其他属性是可以很容易地作为 Json 对象发送的字符串,但是对于包含图片的最佳解决方案是什么?
  2. 如果 multipart formdata 是最好的解决方案,它是如何在 Lagom 中处理的?
0 投票
1 回答
57 浏览

lagom - 将捆绑包加载到 ConductR 沙箱时解析异常(Windows)

我正在尝试在 Lightbend ConductR 沙箱上部署 lagom 微服务,但是当我尝试加载捆绑包时它会引发异常(与配置解析相关)。此步骤在具有相同项目的 Ubuntu 机器上运行良好。

这是错误消息

bundle.conf 有以下内容:

机器配置:

0 投票
1 回答
1183 浏览

scala - 简单的微服务框架

有一段时间我一直在为微服务框架寻找一个快速简单的解决方案。我对所有 Lightbend 产品和 scala 都很陌生,但由于它看起来很有趣,我决定试一试。

几个问题:

1) 我不明白为什么需要新框架 Lagom ?

如果 play 已经可以给我同样的解决方案(作为微服务),那为什么还需要另一个框架呢?

2)通过玩,我设法非常快速地创建了一个“Hello World”项目,而且部署非常简单直接(通过 dist)。

我喜欢这样一个事实,即我可以将所有内容合并到一个 ZIP 中并通过脚本运行它。据我了解,在 Lagom 中,我需要使用 ConductR。

对于我目前的需求,它看起来像是一个很大的开销。是否有一个简单的原因来部署它,比如在 play 中?

谢谢你们

0 投票
1 回答
220 浏览

lagom - 如何逐步使用 sbt 创建一个空的 lagom 项目?

根据 lagom 参考,我可以activator new xxx lagom-java用来创建一个简单的项目。但是如何使用 sbt 或 activator 创建一个空的 lagom 项目(不包括示例代码)?请告诉我步骤。

0 投票
0 回答
982 浏览

scala - scalac:加载类文件“CassandraSession.class”时检测到缺少或无效的依赖项

我一直在使用 Maven 在 Javadsl 中进行开发,但是自从我添加了 Scaladsl 库以来,我一直无法在我的 intellij 2016 中编译该项目。

这是我得到的错误:

错误:scalac:加载类文件“CassandraSession.class”时检测到缺少或无效的依赖项。无法访问包 akka.persistence.cassandra 中的术语会话,因为它(或其依赖项)丢失。检查您的构建定义是否存在缺失或冲突的依赖项。(重新运行-Ylog-classpath以查看有问题的类路径。)如果“CassandraSession.class”是针对不兼容的 akka.persistence.cassandra 版本编译的,则完全重建可能会有所帮助。

我尝试了以下方法:

  1. 使缓存无效并重新启动 Intellij
  2. Maven 全新安装(失败)
  3. 重启电脑

他们都没有工作。

有谁知道如何解决这个问题?

这是我同时使用 Scaladsl 和 Javadsl 的模块的 POM.xml。

谢谢!

0 投票
1 回答
1694 浏览

java - 在生产中运行 Lagom

我正在努力在生产中设置 Lagom 应用程序。我曾尝试联系 Lightbend 以获得 ConductR 许可证,但很久没有回音了。所以,现在我正在寻找一种替代方法。我有多个问题。

由于现在应用程序的规模很小,我认为使用静态服务定位器现在对我有用(对其他替代方案开放)。另外,我使用 MySQL 作为我的事件存储,而不是 Cassandra 的默认配置(与此线程无关的原因)。

为了抑制 Cassandra 和 Lagom 的服务定位器,我在 build.sbt 中添加了以下几行:

我还使用 service1-impl 模块将以下内容添加到我的 application.conf 中。

对于开发环境,我已经能够sbt runAll在 tmux 会话中成功运行我的应用程序。使用此配置,默认 8000 端口上没有运行服务定位器,但我可以单独点击 8080 端口上的 service1。(不确定这是否是预期的行为。评论?)

我跑去sbt dist创建一个 zip 文件,然后将其解压缩并在其中运行可执行文件。有趣的是,zip 是在 service1-impl 文件夹中创建的。那么,如果我有多个模块(服务?),sbt dist 会为每个服务创建单独的 zip 文件吗?

当我运行通过创建的可执行文件时sbt dist,它会尝试连接到 Cassandra 并启动服务定位器并忽略我添加的静态服务定位器配置。基本上,看起来它忽略了我添加到 build.sbt 的行。谁能解释一下?

最后,如果我有 2 个服务,service1 和 service2,以及集群中有 2 个节点,其中节点 1 运行 service1,节点 2 运行这两个服务,我的静态服务定位器在 application.conf 中的外观如何,因为每个该服务将有自己的application.conf,我是否必须在所有application.confs中复制相同的配置wrt静态服务定位器?

会是这样吗?

由于每个特定的参与者都将在其中一个节点上产生,它如何与这个服务定位器配置一起工作?

另外,我不想在生产中的 tmux 会话中运行它。最终在生产中运行此代码的最佳方法是什么?

0 投票
1 回答
428 浏览

lagom - 如何让'mvn lagom:runAll'让我的服务监听端口?

我在运行我的第一个服务时遇到问题,因此决定从 lagom Maven archtype 项目中添加 hello-api 和 hello-impl 项目,看看它是否可以工作。它有,但我的没有。

背景

由于其他团队成员都是纯 Java 开发人员,我试图避免使用 sbt 和 activator。因此,目标是一切都在 Maven 中工作。

这是“mvn install”脚本输出的片段,用于显示构建的其他服务。

注意:创建了一个类似于 HelloModule 类的 MAIActorsModule 类,并将 application.conf 文件添加到 src/main/resources 文件夹中。

发出命令“mvn lagom:runAll”时,最初,服务是记录的 hello 服务端口,但没有记录其他服务的端口。

我错过了哪些步骤?

0 投票
1 回答
685 浏览

lagom - 为什么 lagom 会抛出 java.lang.ClassNotFoundException: com.lightbend.lagom.internal.javadsl.api.broker.TopicFactoryProvider?

在获得有关 [获取服务侦听][1] 的帮助后,之前尝试运行初始 lagom 服务失败。

因此,在这次尝试中,maven 项目(usvcs)只有两个模块(actor-api 和 actor-impl)和一个服务调用“echo”。

并且实现是一个没有实体引用的存根。

运行 'mvn lagom:runAll' 抛出异常,并指出未找到内部lagom dsl 类。

该服务不起作用,明显的问题是是否不允许存根服务调用???

更新

做了一些改动,还是报错,所以我把代码放在github上,以便更完整地记录下来https://github.com/tevye/lagom-echo-project-from-scratch

0 投票
1 回答
987 浏览

java - Lagom - 使用标头测试服务调用

我正在尝试遵循此处有关“处理标头”的文档。我不知道如何使用标头测试服务调用调用。通常,我会做

我注意到ServerServiceCallHeaderServiceCall接受invokeWithHeaders(...)并且我ServiceCall的实现为 a HeaderServiceCall,但是每当我尝试将我的服务 API 更改为ServerServiceCallorHeaderServiceCall时,我得到:

如何编写使用自定义请求标头调用服务调用的测试?我尝试将调用保持ServiceCall在 API 中,使用 实现HeaderServiceCall,并在测试中将调用强制转换为HeaderServiceCall,但尝试执行此操作时出现强制转换异常。任何帮助深表感谢。谢谢。