Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何清除误加的 MSMQ 配置 #542

Closed
wangshunmin opened this issue Aug 13, 2019 · 1 comment
Closed

如何清除误加的 MSMQ 配置 #542

wangshunmin opened this issue Aug 13, 2019 · 1 comment

Comments

@wangshunmin
Copy link

wangshunmin commented Aug 13, 2019

MSMQ 组件的配置是为了让服务器和数字平台的的“我爱图书馆”微信公众号连接,以便发送各种消息通知(加入“我爱图书馆”微信公众号是收费服务)。

数字平台的认证用户单位需要启用MSMQ,一般由数字平台服务人员启用MSMQ并做好配置工作。

如果是非认证用户,并没有MSMQ需求,自己在【dp2install安装实用工具】或者单机版服务器中中随便点击了【自动配置MSMQ参数】按钮,使得 library.xml 中增加了MSMQ默认参数了, dp2library 初始化 MSMQ 时候就会出错了,提示【此计算机上尚未安装消息队列】等错误。这样服务器就会被挂起,无法正常运行。

查看dp2library错误日志,会有提示“重试探测和尝试创建 MSMQ 队列 '.\private$\dp2library' 失败: system.InvalidOperationException:此计算机上尚未安装消息队列”

实例:

用户在启动dp2内务时候报错:【因系统出于维护状态,MessageQueueCreateFail】

图片

根据用户提供的当天的dp2library错误日志,看到日志里面显示“dp2library 初始化 MSMQ 出错,此计算机上尚未安装消息队列。服务器已被挂起”

随后了解到,该用户并没有开通过微信公众号,没有相关访问权限。却在dp2install安装实用工具中实例配置界面,点击【自动配置MSMQ参数】按钮,系统自动配置了参数MSMQ,就报了错误。需要将【自动配置MSMQ参数】添加的参数删除。

【自动配置MSMQ参数】增加的参数
使用dp2install安装实用工具,dp2libary实例安装好之后,进入到实例配置界面,点击“自动配置MSMQ参数“,系统对library.xml自动配置了中如下4个参数:

<message dbname="消息" reserveTimeSpan="365day"   defaultQueue=".\private$\dp2library_lib1" />

<arrived dbname="预约到书" reserveTimeSpan="2day" outofReservationThreshold="10" canReserveOnshelf="true"  notifyTypes="dpmail,email,mq"  />

<readersMonitor startTime="23:00"  types="dpmail,email,mq"  />

<circulation patronAdditionalFroms="证号,姓名" verifyBookType="true" verifyReaderType="true"  notifyTypes="mq"  verifyBarcode="true" verifyRegisterNoDup="no" />

处理:为了要删除MSMQ配置,需要修改library.xml中上述4个地方的配置,即删除message节点的defaultQueue属性,删除其它地方的mq。另外,如果在消息队列也要手工删除对应的名称

libary.xml的位置

单机版服务器:点【帮助】-【打开用户文件夹】-【library_data】子目录里面有一个libary.xml配置文件,用记事本打开,修改里面相关的参数

标准版服务器:在dp2installer里面点【dp2library】-【打开数据文件夹】-【libary_data】子目录里面有一个libary.xml配置文件,用记事本打开,修改里面相关的参数

修改后配置如下

<message dbname="消息" reserveTimeSpan="365day" defaultQueue="" />

 <arrived dbname="预约到书" reserveTimeSpan="2day" outofReservationThreshold="10" canReserveOnshelf="true" notifyTypes="dpmail,email" />

<readersMonitor startTime="23:00" types="dpmail,email" />

<circulation patronAdditionalFroms="证号,姓名" verifyBookType="true" verifyReaderType="true" notifyTypes="" verifyBarcode="true" verifyRegisterNoDup="no" />

修改完library.xml以后,重新启动内务,就可以正常运行了。
需要注意的是:
arrived 元素里面的notifyTypes属性缺省值是 "dpmail,email"
circulation 元素里面的 notifyTypes 属性缺省值是空

@DigitalPlatform DigitalPlatform changed the title MSMQ配置 如何清除误加的 MSMQ 配置 Aug 13, 2019
@Hopeshine
Copy link

已纳入文档系统

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants