问题标签 [advanced-queuing]
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.
java - 构建自定义列表数据结构,测试工具中的绑定不匹配错误
我正在编写一个列表 ADT,与(堆栈和队列)不同,我将能够在列表中的任何位置添加/删除项目。我还希望能够遍历列表。所以我正在创建指针来跟踪项目。当我尝试在列表中添加项目(在测试工具类中)时,我得到一个绑定的不匹配。
请看一下下面的界面,我想您将能够获得更好的主意。
使用有界类型参数使 ObjectType 成为KeyInterface
下面的子类型是 KeyInterface
这是我的 List 实现的样子。
从逻辑上讲,我在这个类中看不到任何错误,并且我已经分别测试了这些方法。还制作了一个 List Iterator 类来遍历 List。这就是它的样子。
我知道 remove 方法没有做任何事情,因为它的设计很糟糕,请暂时忽略它。现在我被困在测试线束部分。我不知道如何添加不同的项目,因为类中有很多扩展。
无论我放在里面什么<>
结果都是有界的不匹配。所以什么可以是有界参数的有效替代品。帮助??
oracle - Oracle AQ Enqueue 默认模式
从关于 DBMS_AQ 的入队方法的 Oracle 文档中,指定“对象的名称由可选的模式名称和名称指定。如果未指定模式名称,则假定当前模式。” [1]
有问题的系统定义了模式中的所有对象,我们称之为 DEV。然后像 DEV_AD 一样定义用户,并且在登录期间,有一个触发器将其当前模式更改为 DEV。这意味着当他们从某个表中选择 * 时,他们从 DEV.sometable 中选择 *,而不是 DEV_AD.sometable。这没有任何问题。
但是,当用户尝试在 SOMEQUEUE 上排队消息时,它不起作用 - 系统尝试在不存在的 DEV_AD.SOMEQUEUE 上排队,而不是在 DEV.SOMEQUEUE 上排队。通过将 DEV.SOMEQUEUE 而不仅仅是 SOMEQUEUE 作为 DBMS_AQ.ENQUEUE 的参数,消息成功排队。
这是一个 Oracle 错误(或文档错误),是否有解决方法?
如果这是一个错误,我们在接下来的几个月里仍然使用 10.2.0.4.0。是固定在11g吗?
[1] http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_aq.htm#ARPLS081
oracle - Oracle AQ 出队参数
我正在尝试将消息从 Oracle 队列中取出,但在设置 dequeue_options 时遇到了问题。我正在尝试使 ENQ_TIME 大于输入值(时间戳)的消息出列。我设法通过参数、msgid 或 enq_tid 使消息出列。我用了
那是有效的。当我尝试对 enq_time 执行相同操作时,我收到一个错误,即没有消息。我尝试在运算符的两侧使用 > 符号和不同的 to_char 转换字符串,但无法正常工作。
请指教。
oracle - 从 BizTalk 使用 Oracle 高级队列
我需要将来自 Oracle AQ 的消息消费到我的 BizTalk 服务器中。第三方将对消息进行排队,并且 BizTalk 服务器应该取消排队并使用它们。我通过互联网和 MSDN 阅读了所有内容,发现没有直接的方法可以从 BizTalk 使用 AQ。
我在这里错过了什么吗?
如果我想在 BizTalk 中使用 AQ,我有哪些选择?
我正在考虑编写存储过程来为我执行此操作,然后我调用存储过程,或者可能是位于 AQ 和 BizTalk 服务器中间的 WCF 服务。但我只想知道这里的专家建议。
oracle - 如何代表不同的用户执行 oracle DMBS_AQ.REGISTER?
一个特权调度程序用户 - user1 接收电子邮件通知,而另外两个(user2,user3)没有。
我想在 user3 模式上执行下面的代码,我们在 user2 上成功尝试了这个(代码直接在具有临时 sys.dbms_aq 访问权限的模式上执行)所以他现在收到他的通知。为 user1 上的 bot 用户代理启用了数据库访问。
如您所见,我知道“什么”解决了问题,但不知道该怎么做:-)
问题是 - 我们无法直接访问第二个帐户(user3)如何代表 user3 执行此代码?
已经尝试在 user3 上创建过程并立即执行匿名块,但它仍然在 DBA_QUEUE_SUBSCRIBERS 中向 USER# 1 而不是 3 注册。
数据库版本是 11.2.0.3.0 在 unix 上。
c# - 在 C# 中清除 Oracle 高级队列
我正在开发一个使用 Oracle 高级队列来控制它的 Windows 服务。命令对象将被放置在队列中,服务会将其出列并尝试执行任务。为了控制服务,我还开发了一个小命令应用程序。此应用程序会将命令放入队列,但我也希望它能够在按下按钮时通过调用 dbms_aqadm.purge_queue_table 来清除队列。我试过这两种方法。首先我试过:
我收到以下错误:
dbms_aqadm.purge_queue_table 有 3 个参数,我给它传递了 3 个参数。此外,它们是正确的类型。没有理由尽我所能说明为什么会发生此错误。我无法弄清楚如何让它消失,所以我尝试了以下方法:
并得到错误:
SQL 语句不是无效的。它在 SQL Developer 中运行良好。所以在任何一种情况下,我都会收到错误消息,除非我错过了我不应该得到的东西。我想不出办法解决这个问题。有人可以告诉我我做错了什么或如何解决这个问题吗?
oracle - Dequeinf XMLTYPE 消息抛出错误
我有以下代码用于从 AQ 中取出数据
执行后给我以下错误 -
错误报告 - ORA-06550:第 14 行,第 30 列:PLS-00306:调用“||”的参数数量或类型错误 ORA-06550:第 14 行,第 8 列:PL/SQL:语句被忽略 06550。00000 - “行 %s,列 %s:\n%s” *原因:通常是 PL/SQL 编译错误。*行动:
我已将上述块用于不同的有效负载类型,并且工作正常,但是当我使用 XMLTYPE 作为有效负载时,我遇到了这个问题。
我已经在没有使用 DBMS_OUTPUT.PUT_LINE ('Message: ' || message); 的情况下尝试了带有 XMLTYPE 有效负载的上述块;它工作得很好。
我在哪里犯错误?
java - 队列未清除已消费消息
我正在使用以下代码。我能够创建、浏览、发送和接收消息。但是当我从队列中消费一条消息时,它并没有从队列中清除。
有什么我想念的吗?
java - 调用“DROP_QUEUE_TABLE”时参数的数量或类型错误
我正在尝试使用 jdbcTemplate().update 方法删除队列。这是 -
DBMS_AQADM.DROP_QUEUE_TABLE 有两个参数。1) queue_table 作为字符串和 2) force 作为布尔值。
当我尝试运行上面的代码时,我得到 -
但是当我运行以下代码时,它可以正常工作-
我猜是,问题是将 oracle 对象(不是 varchar 或 int)作为参数传递。
我真的很想知道有什么办法可以解决这个问题。
java - Java 中的 Oracle 高级队列
我正在实施 Oracle Advanced Queue 并且对它完全陌生。我对此有一些疑问。下面是我的代码:
我创建了一个队列表和一个队列。消息已从队列中写入和读取。
Q1。我可以在同一个队列中再写一条消息并从中读取吗?如果是,我们该怎么做?因为我尝试将消息写入同一个队列但不能
Q2。如何将上面的代码转换为发布订阅?如何通过多次阅读相同的消息来测试它?
任何帮助表示赞赏。