【发布时间】:2015-01-05 06:14:14
【问题描述】:
我已经使用 EJB 3.1 创建了一个远程 EJB bean,并将其部署在 Web 逻辑 12c 上。现在通过一个简单的 java 客户端,我可以访问远程 bean。它工作正常。
Java 客户端代码:
Context ctx = null;
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
try {
InitialContext ic = new InitialContext(ht);
}
我的下一个方法是在部署在 Tomcat 7 中的 Web 应用程序中调用这个远程 bean。但它会抛出异常
原因:java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory。
我正在使用以下代码来调用 ejb bean: 属性properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
properties.put("java.naming.factory.url.pkgs", "weblogic.jndi.factories:weblogic.corba.j2ee.naming.url");
properties.put(Context.PROVIDER_URL, "t3://localhost:7001");
properties.put( Context.SECURITY_PRINCIPAL, "weblogic");
properties.put( Context.SECURITY_CREDENTIALS, "weblogic1");
try {
Context ic = new InitialContext(properties);
}
如何让它发挥作用。
谢谢
【问题讨论】:
标签: java tomcat ejb jndi weblogic12c