我试图从我正在阅读的关于 JBoss 5 (JBoss AS 5 Developmet) 的书中构建一个示例,但是即使直接来自书中的代码也无法正常工作。
这是我的界面:
@Remote
public interface Mailer {
public void sendMail(String aToEmailAddr,
String aSubject, String aBody);
}
这是实现此接口的 EJB
@Stateless
@RemoteBinding(jndiBinding="remote/MailerEJB")
public class MailerBean implements Mailer {... }
这是尝试查找 bean 的客户端应用程序。
public class MailClient {
public static void main(String[] args) throws Exception
{
InitialContext ctx = new InitialContext();
Mailer mailer = (Mailer) ctx.lookup("remote/MailerEJB");
}
}
当我尝试运行 MailClient 类时,我得到了以下异常
Exception in thread "main" javax.naming.NameNotFoundException: remote not bound
我也有 jndi.properties 文件,我将它添加到构建路径中,它看起来像这样>
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.provider.url=jnp://localhost:1099
java.naming.factory.url.pkgs=org.jnp.interfaces
即使在 jmx-console 中,我也根本看不到远程/MailerEJB Bean。
我正在使用 jboss-5.0.1.GA + JBDS + java 1.7.0
有人可以帮帮我吗?