我使用gradle在本地部署。
对我的jndi查找名称产生新的缺失/不满意的依赖:
JBAS014775:新的缺失/不满足的依赖项:service jboss.naming.context.java.comp.min.comp-alert-manager.EmailAlertHandler.env。“$ {min.email.jndi.lookup.binding}”(缺失)dependents:[service jboss.naming.context.java.comp.min.comp-alert-manager.EmailAlertHandler.env。“com.comp.alert.EmailAlertHandler”.session]
其中min.email.jndi.lookup.binding用于EmailAlertHandler.java:
@Resource(mappedName = "${min.email.jndi.lookup.binding}")
private Session session;
local.build.properties:
min.email.jndi.lookup.binding=java:/jboss/mail/Default
jboss.profile=default
jboss.server.groups=other-server-group
jboss.servers=localhost/server-three
domain.xml中的邮件子系统:
<subsystem xmlns="urn:jboss:domain:mail:1.2">
<mail-session name="default" jndi-name="java:jboss/mail/Default">
<smtp-server outbound-socket-binding-ref="mail-smtp"/>
</mail-session>
</subsystem>
domain.xml中的outbound-socket-binding:
<outbound-socket-binding name="mail-smtp">
<remote-destination host="smtp.comp.com" port="25"/>
</outbound-socket-binding>
我的jboss控制台也显示正确的jndi名称
我认为问题出在我当地的JBoss EAP 6.4.12上。同事可以在本地部署而不会出现此错误。可能是我的host.xml或domain.xml中的内容。我注意到我的同事是服务器组有一个完整的ha配置文件而不是他的jboss6的默认配置文件。所以我确实尝试将我的更改为添加到我的domain.xml中的全ha配置文件xml块,但这不起作用。