问题标签 [apache-cayenne]

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 回答
121 浏览

postgresql - Apache cayenne - cdbimport 任务恢复 PK 生成策略做默认

我对卡宴的 PK 生成策略有疑问。

我将 PostgreSQL 9.6 与 Apache Cayenne 4.0.B1 一起使用。

这是我在 postgres 中的表:

然后我在 Cayenne Modeler 中执行 Tools -> Reengineer Database Schema。我得到了桌子和实体。现在我必须将 PK Generation Strategy 设置为 Database-Generated,让 DB 生成我的 PK。当我通过 ObjectContext 插入对象时,一切正常。但是,如果我正在运行 gradle task cdbimport,它会用另一个没有生成策略的文件覆盖我的 datamap.map.xml 文件。请给我建议我做错了什么。

这是我的毕业任务

0 投票
1 回答
133 浏览

java - Apache Cayenne“DI 容器没有绑定关键 ObjectContextFactory”错误

我正在使用 Apache 4.0 BETA,但出现以下运行时错误:

由于 Cayenne 是模块化的,我包含了这些依赖项(见图)。在此处输入图像描述

需要包含什么库?

谢谢!

(后端数据库是 postgres 但我不认为这与此错误有关。)

0 投票
1 回答
189 浏览

java - 管理 Apache Cayenne“...project.xml”文件的最佳实践

Apache Cayenne 在资源目录中保留了一个“...project.xml”文件。该文件包含数据库的密码。这是一个问题,因为 [部署服务器] 密码不应该对开发人员可见。此外,在开发过程中需要使用不同的用户/密码并连接到不同的数据库。

使用 Cayenne 时管理此“...project.xml”的最佳做法是什么?有什么建议么?

编辑:

除了将数据库连接信息(包括密码)放入 XML 文件之外,是否可以以编程方式将信息注入 DataSource 对象?如果是这样,我可以在应用程序启动时从配置文件中加载信息,然后注入它。

0 投票
1 回答
294 浏览

orm - 如何在 Apache-Cayenne 中删除对象?

我的后端应用程序通过 REST API 获取 json 对象,该对象存在于数据库中但不存在于 Caeynne ObjectContext 中,如何通过 ObjectContext 按 id 删除对象。

0 投票
1 回答
238 浏览

java - Apache Cayenne 的 velocity.log 文件是什么?

我注意到 Apache Velocity 总是将日志写入文件“velocity.log”。我们真的需要这个吗?如何关闭它(禁用velocity.log 输出)?

谢谢!

0 投票
1 回答
854 浏览

java - Vaadin/Apache Cayenne 应用程序的 Tomcat 部署的“velocity.log”位置在哪里?

我正在部署一个使用 Vaadin 和 Apache Cayenne 的应用程序。当我将它部署在以用户“www”运行的 Tomcat 上时,它会导致问题。(如果我以“root”身份运行 Tomcat,则没有问题。)

它抱怨没有访问/写入名为“velocity.log”的文件的权限。有谁知道 Cayenne/Tomcat 访问文件的位置在哪里?

我试图通过以下方式找出:

我看到它打印出“/config”。因此,我尝试从根“/config”创建一个目录并设置正确的权限,并且我也尝试在 Tomcat 目录中的多个位置执行相同的操作。没有工作。

它现在在 Tomcat 中运行,因为我将用户设置为“root”。我想将其设置回“www”,但我需要先解决这个问题。有谁知道Tomcat部署中所谓的“velocity.log”文件的位置在哪里?

0 投票
1 回答
71 浏览

mysql - 使用 Cayenne 选择自定义数据返回空行

我正在尝试从 2 个 diff mysql 表中选择数据:

在我的代码中,我有:

我也试过:

但是我收到了 4 行空行而不是 4 行数据。

我应该怎么办?

0 投票
1 回答
238 浏览

mysql - 为什么我将网站放在 debian 服务器上时出现 cayenne 连接错误

我正在尝试将我的网站上线。为此,我有一个 debian 和一个码头服务器。当我尝试访问我的网站时,它会显示我的主页,所以,这没关系。

但是,当我尝试登录时,它给我一个错误消息。

它正在使用以下配置在我的本地计算机上运行:

所以,我验证了用户名和密码是好的。我尝试使用新配置在我自己的机器上执行我的网站:

我错过了什么?

错误信息是:

在此处输入图像描述

(对不起,我正在尝试找到可以在服务器上找到码头日志的位置,我将使用完整堆栈对其进行更新)

我想我忘记了一个信息?我确定我的密码和服务器上 mysql 的登录名。我正在使用 SSH,配置在我的工作台中: 在此处输入图像描述

我正在使用 maven,所以我在 pom.xml 中添加了 mysql :

我读到这可能是因为我们没有将 mysql 放在类路径中。但是,这应该有效,不是吗?

编辑:我试过了:<url value="jdbc:mysql://serverusername@serverpwd/serverip:3306/database"/>,没有成功......

编辑 2:此配置有效:

0 投票
1 回答
310 浏览

java - 在没有 web.xml 的 webapplication 中使用 CayenneRuntime

我有一个 Wicket 应用程序,我正在尝试实现可以​​远程更改的单独配置。无论如何,这就是最终目标。

我想要做的是设置 Cayenne 通过手动启动它来工作,而不是使用 web.xml 文件。我尝试了很多不同的东西,但我不确定我是否完全理解上下文是如何应用于所有线程的。

我尝试在我的 Application 类中创建一个 ServerRuntime。我还尝试了每个页面使用的自定义 BasePage 类。我可以通过在 BasePage 上执行以下操作来使其工作,但它是不一致的:

就像我说的那样,这种方法有效,但并不一致。我不断收到错误

错误是这样的:

我似乎找不到太多关于此的信息。我尝试做这样的事情,并使用这些来访问运行时,但没有任何东西能始终如一地工作。

任何帮助将不胜感激。

0 投票
1 回答
10499 浏览

java-8 - 当我尝试在我的网站上进行查询时出现错误“查询数据包太大”

我再次需要你的帮助。我正在尝试将我的 java 网站放到网上。

我用什么:

  • MySQL 服务器:命令行 mysql -V,结果:mysql Ver 15.1 Distrib 10.1.23-MariaDB,使用 readline 5.2 的 debian-linux-gnu (x86_64)
  • 辣椒
  • Debian 服务器
  • 爪哇 (Vaadin)

查询数据包太大(4739923 > 1048576)。您可以通过设置 max_allowed_pa​​cket' 变量在服务器上更改此值。

我尝试了什么:

1.就像错误所说,我尝试通过执行以下操作更改服务器上的值:

  • 登录我的服务器
  • 使用以下命令连接到 MySQL:mysql -u root
  • 进入 :SET GLOBAL max_allowed_packet=1073741824;
  • 然后,使用以下命令重新启动服务器:/etc/init.d/mysql restart

但我仍然有错误。

2.我看了看:如何更改 max_allowed_pa​​cket 大小

但是,当我这样做时nano /etc/mysql/my.cnf,文件看起来像(我没有任何 [mysql]):

在 mysql 中,“mysql”文件夹中的文件夹/文件是:

在此处输入图像描述

任何提示将不胜感激!谢谢

编辑:/etc/mysql/mariadb.conf.d/50-server.cnf,我改变了:

  1. max_allowed_packet = 1073741824
  2. max_connections = 100000

我补充说:net_buffer_length = 1048576

有关信息:在我的工作台中,我可以看到服务器变量: 在此处输入图像描述

EDIT2:现在,当我在服务器上的命令行中选择变量时,我有:


解决方案因为错误不明确。

感谢com.mysql.jdbc.PacketTooBigException

我的卡宴配置是:

但它应该是: