gpt4 book ai didi

java - 单元测试中 SerialContext 中的 'java:comp/env' 的 Tomcat -Hudson- 查找失败

转载 作者:行者123 更新时间:2023-11-28 23:41:15 26 4
gpt4 key购买 nike

我正在使用 Tomcat 和 Hudson 运行 JUnit 测试,但我在测试电子邮件发送时遇到了问题。在 Hudson 上运行测试我得到以下错误:

javax.naming.NamingException: Lookup failed for 'java:comp/env' in SerialContext 
at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.getComponentId(GlassfishNamingManagerImpl.java:773)
at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:655)
at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:156)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:428)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
at com.mycompany.extmon.authentication.ChangePasswordForm.<init>(ChangePasswordForm.java:43)
at com.mycompany.extmon.authentication.ChangePasswordFormTest.changePasswordTestMissingUser(ChangePasswordFormTest.java:42).

我不明白为什么它会丢弃这个与 Glassfish 相关的异常,因为我是这样使用 tomcat 的:

    Context initCtx;
Context envCtx;
Session mailSession;

public ChangePasswordForm() throws NamingException {
initCtx = new InitialContext();
envCtx = (Context) initCtx.lookup("java:comp/env");
mailSession = (Session) envCtx.lookup("mail/erik.csik.ext@mycomoany.com");

在实时构建中一切正常,没有错误,已发送电子邮件,但在单元测试中失败。我忘了设置什么或者我应该在哪里寻找问题?到目前为止我没有发现任何有用的东西。我猜这是 Hudson 配置的问题,但我找不到问题出在哪里。

包含的 context.xml 部分:

<Resource name="mail/erik.csik.ext@mycompany.com" auth="Container"
type="javax.mail.Session"
mail.smtp.auth="true"
mail.smtp.host="mail.mycompany.net"
mail.smtp.port="25"
mail.smtp.user="admin"
mail.transport.protocol="smtp"
password="password"
mail.smtp.from="erik.csik.ext@mycompany.com"/>

最佳答案

看起来您的查询有错别字:

<Resource name="mail/erik.csik.ext@mycompany.com"

对比

envCtx.lookup("mail/erik.csik.ext@mycomoany.com");
.......................................^

关于java - 单元测试中 SerialContext 中的 'java:comp/env' 的 Tomcat -Hudson- 查找失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19381216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com