温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Jspxcms启动报错The object cannot be set twice怎么办

发布时间:2022-01-19 16:26:50 来源:亿速云 阅读:189 作者:iii 栏目:开发技术

本文小编为大家详细介绍“Jspxcms启动报错The object cannot be set twice怎么办”,内容详细,步骤清晰,细节处理妥当,希望这篇“Jspxcms启动报错The object cannot be set twice怎么办”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

如果在启动或访问的时候,出现以下报错信息,是因为Tomcat里的应用启动了两次。

com.jspxcms.common.fulltext.LuceneException: Error during searching.; 
nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'searcherManager' defined in class path resource [custom.xml]: 
Cannot resolve reference to bean 'indexWriter' while setting bean property 'indexWriter';
nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'indexWriter': FactoryBean threw exception on object creation;
nested exception is org.apache.lucene.util.SetOnce$AlreadySetException: The object cannot be set twice!

导致Tomcat应用启动两次的原因通常是因为修改了tomcat的server.xml里的host、context配置,比如程序放在tomcat/webapps目录下,然后在server.xml里再次配置context,就会出现这种情况。因为在tomcat/webapps里的应用本身就会启动,然后tomcat就检测到server.xml里配置的context,所以会再次启动一次。如:

<Host ...>
    <Context path="/" docBase="D:/tomcat/webapps/ROOT" />
</Host>

或者

<Host ...>
    <Context path="/" docBase="D:/tomcat/webapps/jspxcms" reloadable="true" />
</Host>

正确的做法是不要修改tomcat的server.xml配置文件中的Host、Context配置,直接将程序作为ROOT文件夹,放在tomcat/webapps目录下。

读到这里,这篇“Jspxcms启动报错The object cannot be set twice怎么办”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI