问题标签 [lucee]

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

coldfusion - 如何从内部记录信息

我正在学习使用<cfscript>.

有什么方法可以在 < 中记录一些消息或值cfscript>

像外面<cfscript>我可以使用<cflog>,有什么方法或标记类似的东西,我可以用来打印日志文件里面的消息>

谢谢

0 投票
2 回答
2227 浏览

email - 如何在 Railo 服务器中查看未送达的邮件?

如何在 railo server 中查看未送达的邮件?服务器管理员中是否有任何未送达的邮件文件夹?

  1. 正确提供了 smtp 服务器名称和密码。
  2. 而且我的网络连接也很好。

但我在 ralio 服务器端(管理员)看不到未送达的邮件。

0 投票
2 回答
1008 浏览

sql-server - 尝试使用 Railo 创建数据源时,用户“sa”登录失败

所以我正在尝试设置 Railo,我想添加一个数据源。对于我使用 Microsoft SQL Server Management Studio 的数据库。但现在我遇到了经典问题:“用户 'sa' 登录失败。ClientConnectionId:afd80ac2-0744-4a7d-a9f7-083d93adee0d”

到目前为止我所做的:

  • 通过 TCP/IP 设置中的 SQL Server 配置管理器,我启用了我必须启用的 IP。

  • 我在 MSSQL 中为用户“sa”设置了密码,并为要使用的表添加了用户映射。

  • 我让用户“sa”成为我要连接的数据库的所有者
  • 多次重启 SQL 服务、我的电脑和 Railo。

我几乎没有想法。

0 投票
1 回答
177 浏览

railo - server.railo 是否存在于 Lucee 实例上?

我有这个代码:

coldfusion它输出, java, lucee, os, separator,的顶级键servlet。请注意,railo此处未列出。

但是,如果我这样做:

然后它会输出运行 Railo 服务器(而不是 Lucee 服务器)时可能期望的通常结构。

那是怎么回事?

0 投票
1 回答
227 浏览

cfml - 使用基于 CFC 的自定义标签将子标签数据与祖父标签相关联

这个问题的完整重现案例在我的GitHub 存储库中。我只会在这里重现必要的部分。

假设我有一些自定义标签的用法:

如果我使用基于 CFM 的自定义标签,并且我想将标签实现中的数据与child标签相关联grandparent,我会简单地这样做:

注意我可以直接关联到祖父母标签。

我无法弄清楚如何使用 Lucee 的基于 CFC 的自定义标签干净地做到这一点。

这是我能想到的最好的:

在 Parent.cfc 我有这个:

thisParent 和 Grandparent 范围的累积(错误)使用意味着从 Child 我可以通过this.parent.parent.

然而,这一切都有点“希思·罗宾逊”。鉴于 Lucee 的基于 CFC 的自定义标签实现的其余部分非常巧妙,我确信我只是遗漏了一些东西。我真的不认为我应该通过父母挖洞才能到达祖父母。这也意味着对于孩子直接在祖父母中的情况,代码需要有所不同。我真正需要的是在 CFC 之间传递一些标签层次结构,而不仅仅是父级。

我用谷歌搜索过,但大部分内容都是我写的(这又基于最初为 Railo 的实现而写的博客文章——这是 Lucee 实现的基础)。

我已经阅读过的文档没有帮助:

0 投票
1 回答
4727 浏览

lucee - 重置 Lucee 服务器管理员密码

我最近安装了 Lucee,但忘记了我为服务器管理员设置的密码 (luceee/admin/server.cfm)。

如何重置服务器管理员密码?

0 投票
2 回答
577 浏览

coldfusion - 有什么方法可以在 CFC 中强制执行属性类型?

我在这里遇到了一些奇怪的类型转换问题,不是特定于 Lucee(也在 Railo 中)。可能是我只是在这里错过了一些关键点......

我有一个组件:

这两个属性都明确键入为字符串。我希望当我尝试将对象或数字设置为其中之一时,代码将返回错误。但是,由于我现在已经习惯了 cfml 为我进行类型转换,所以我从来没有考虑过在这里设置一个数字根本没有问题的事实。事实上,我假设我在这里尝试设置的所有数字都会为我转换为字符串。

似乎情况并非如此。在以序列化结构的形式实现了一些包含这些组件的派生类的 REST 调用之后,我注意到有些作为整数包含,有些作为字符串包含。当我注意到这一点时,我转储了组件本身,并注意到在期望字符串作为属性的地方设置了一个数字,输入已被覆盖为数字。

在我看来,Railo / Lucee 仍然验证的事实毫无用处。验证严格类型并抛出错误/传入正确类型的变量,或者验证松散类型并在可能的情况下转换为 CFC 期望的类型。Railo / lucee 在这里实现了松散的类型验证,但仍然决定以原始类型传递变量,而不是 cfc 期望的每个 sé。

鉴于我现在不想将每个数字都转换为字符串,这里是否有一个简单的疏忽可以挽救我的打字?

(我已经在 Lucee 邮件列表中发布了这个,但没有任何结果,只是人们确认了我已经说过的话/忽略了这不是预期行为的可能性。)


更新(如亚当所问): 我看到的是以下内容(在我上面描述的 cfc 组件中):

在这两种情况下,我都希望: - 输入变量将被严格评估为字符串,这意味着第二个示例会引发错误,因为它实际上是一个数字 - 输入变量将被松散地评估为字符串, 但在通过评估时会被强制转换为字符串,这意味着第二个示例将通过但最终将返回一个字符串,而不是数字。

在任何情况下,我都希望保留属性的原始类型,而是将其更改为您尝试设置的任何类型,只要它通过当前的松散评估即可。

0 投票
2 回答
1166 浏览

coldfusion - 组件上 accessors=true 的意外行为

我正在尝试在 Lucee 上的组件上使用合成访问器(尽管这个问题在 ColdFusion 上似乎也一样)。

复制代码:

和调用代码:

请注意我在这里没有使用合成访问器,我只是将参数值设置为同名变量范围的变量。

但是,当我运行此代码时,我看到了:

转储输出显示属性

请注意如何填充属性。这没有问题,但我显然不明白该accessors标志应该如何工作。我认为它只是为了为我(它有)综合一些访问器方法,但仅此而已。

另请注意,如果我修改 CFC 定义以将访问器设置为 true,则转储会显示以下内容:

没有属性的转储

因此没有合成访问器(如预期的那样),而且现在甚至没有显示属性(是否具有变量范围的值)。

我真的不明白“属性”和访问器设置的这种混淆?当然访问器设置应该只影响这些访问器方法是否被创建?

如果我只在其中一个平台上看到这个,我可能会把它归结为如何writeDump()解释属性定义的变幻莫测。但是在 ColdFusion 11 上的行为是相同的,所以看起来我不太明白的行为确实存在一些差异。

谁能解释一下?有没有解释它的文档?如果不是……嗯……为什么不呢?

我在这里的潜在担忧是,属性值没有“正确”存储,一旦我实现更多代码,可能会给我带来问题。

更新:至少在 ColdFusion 上,这似乎只是writeDump()' 行为的改变,因为如果属性有 getter(无论是否accessors设置了标志),那么属性值就会开始出现在转储中。不过,Lucee 的情况并非如此,所以那里仍然有一个问号。

为了充分披露,这个问题是我在我的博客上提出的一个问题的总结(“ CFML:试图理解访问器”)。重复是故意的,因为我的博客与本网站的受众不同。

0 投票
1 回答
292 浏览

railo - 和相对位置

我有一个应用程序,当请求到达特定文件时,它的相对位置会超出一个文件夹。如果我尝试从上面的文件夹中包含一个文件

失败,但是

作品。

如果我直接请求文件,“../file.cfm”会按预期工作。如果我使用替代文件重新创建堆栈,它也可以按预期工作。

所以在我看来,代码中有一些东西导致文件的相对位置不同。

那可能吗?这是相对的,我没有使用任何映射。

如果不是,那么有些东西坏了,我将不得不尝试其他东西。抱歉,我无法发布任何代码来演示。

克里斯

0 投票
3 回答
276 浏览

cfml - Lucee array.each 返回值

在 Lucee 4.5.1.003 我有这个函数,其中 LineArray 是 LineItem 对象的数组。

即使存在匹配,该函数也会返回 null。如果我添加一个 var 来保存找到的对象,则返回该 var。

我在期望 array.each 返回 i 时做错了什么,还是我误解了 array.each 的工作原理?

编辑:要清楚,第二个函数确实返回找到的对象。