Я попытался создать простой образец удаленного клиента EJB, но я все время получаю java.lang.NoClassDefFoundError:
в любое время, когда пытаюсь развернуть EJB.Почему Wildfly 8.1.0 final return java.lang.NoClassDefFoundError: при развертывании модуля ejb с удаленной библиотекой приложений, но у стеклянной рыбы нет?
The Remote Java библиотеки Файловая структура:
> TestRemoteInterface --Source Package -- bean --TestBeanRemote.java -- Libraries -- Java EE 6 API Library --JDK 1.8
EJB-структура модуля Файл:
> TestEJBModule --Source Package -- bean --TestBean.java -- Libraries -- TestRemoteInterface – dist/TestRemoteInterface -- Java EE 6 API Library -- JDK 1.8
TestBeanRemote.java
package bean;
import javax.ejb.Remote;
@Remote
public interface TestBeanRemote {
String getName(String name);
}
TestBean .Java
package bean;
import javax.ejb.Stateless;
@Stateless public class TestBean implements TestBeanRemote {
@Override public String getName(String name) { return "Here is my " + name; } }
Вопрос: Когда я пытаюсь развернуть TestEJBModule на получить журнал последующих:
WARN [org.jboss.modules] (MSC service thread 1-6) Failed to define class bean.TestBean in Module "deployment.TestEJBModule.jar:main" from Service Module Loader: java.lang.LinkageError: Failed to link bean/TestBean (Module "deployment.TestEJBModule.jar:main" from Service Module Loader)
....
Caused by: java.lang.NoClassDefFoundError: bean/TestBeanRemote
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.8.0_05]
....
Caused by: java.lang.ClassNotFoundException: bean.TestBeanRemote from [Module "deployment.TestEJBModule.jar:main" from Service Module Loader] at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final]
.. .
Caused by: java.lang.LinkageError: Failed to link bean/TestBean (Module "deployment.TestEJBModule.jar:main" from Service Module Loader) at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:487) [jboss-modules.jar:1.3.3.Final] .....
Caused by: java.lang.NoClassDefFoundError: bean/TestBeanRemote
.....
Caused by: java.lang.ClassNotFoundException: bean.TestBeanRemote from [Module "deployment.TestEJBModule.jar:main" from Service Module Loader] at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final]
Когда я попытался развернуть этот же образец с Glassfish 4. Он отлично работает.
NB: Я использую NetBeans 8.0.1
Там, как представляется, подобная thread, но это не помогло. Заранее спасибо.
Вы развертыванием '' TestRemoteInterface' и TestEJBModule' как два разделенных банки? Если это так, обе банки находятся в разделенных загрузчиках классов, и именно поэтому вы получаете NoClassDefFoundError. Рассматривали ли вы развертывание файла уха, содержащего обе банки? – fonkap