Java 在Wildfly 10中找不到org.jboss.security.jndi.JndiLoginInitialContextFactory类
我正在尝试将现有的JBoss5应用程序迁移到JBoss7EAP/WildFly 10中。部分应用程序正在尝试通过执行以下操作远程访问EJB:Java 在Wildfly 10中找不到org.jboss.security.jndi.JndiLoginInitialContextFactory类,java,jboss,wildfly,wildfly-10,Java,Jboss,Wildfly,Wildfly 10,我正在尝试将现有的JBoss5应用程序迁移到JBoss7EAP/WildFly 10中。部分应用程序正在尝试通过执行以下操作远程访问EJB: Properties properties = new Properties(); properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.security.jndi.JndiLoginInitialContextFactory"); properties.put(Context.PROVIDE
Properties properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.security.jndi.JndiLoginInitialContextFactory");
properties.put(Context.PROVIDER_URL, "jnp://localhost:1099");
properties.put(Context.SECURITY_PRINCIPAL, "noone");
properties.put(Context.SECURITY_CREDENTIALS, "noone");
initContext = new InitialContext(properties);
应用程序启动时,WildFly会抛出一条错误消息:
原因:java.lang.ClassNotFoundException:org.jboss.security.jndi.JndiLoginInitialContextFactory,来自[Module”deployment.ear-1.0.ear.ear-1.0.servlet-1.0.war:main”,来自服务模块加载器]
我怀疑这是因为JndiLoginInitialContextFactory
类不再在同一个包中,但我不确定在哪里可以找到它。我试过运行WindUp,但它在启动时抛出NullPointerException,并且不生成报告
在Wildfly 10中我在哪里可以找到这个类?我试着用它来找这个班,但也没用。Wildfly 10有我找不到的图书馆吗?您有EAP 7到EAP 5的电话吗?如果是这样,您必须在应用程序中打包jbossall客户端 在EAP 5上调用EJB的客户端代码将保持不变 您需要确保所需的EAP 5客户端JAR与应用程序一起打包。
此错误中缺少的类位于EAP 5的$JBOSS_HOME/client/jbosssx as client.jar中。您有从EAP 7到EAP 5的呼叫吗?如果是这样,您必须在应用程序中打包jbossall客户端 在EAP 5上调用EJB的客户端代码将保持不变 您需要确保所需的EAP 5客户端JAR与应用程序一起打包。
此错误中缺少的类位于EAP 5的$JBOSS_HOME/client/jbosssx as client.jar中。远程EJB部署在同一个JBOSS EAP实例中还是另一个实例中?目前是同一个实例。但也需要为不同的实例找到解决方案。我将利用来自不同JB7容器和Tomcat容器的远程EJB代码>。这需要WildFly安装中包含的
jboss client.jar
(/bin/client
)。请继续阅读。我读到JBoss7中不推荐使用JNP协议。当我连接到WildFly 10实例时,我使用的是properties.put(Context.PROVIDER\u URL,“http远程处理:/”+地址)代码>。您的bean的命名可能也不同,但我不熟悉JNP。请查看是否可以在此处获得更多信息:。远程EJB部署在同一个JBoss EAP实例中还是另一个实例中?目前是同一个实例。但也需要为不同的实例找到解决方案。我将利用来自不同JB7容器和Tomcat容器的远程EJB代码>。这需要WildFly安装中包含的jboss client.jar
(/bin/client
)。请继续阅读。我读到JBoss7中不推荐使用JNP协议。当我连接到WildFly 10实例时,我使用的是properties.put(Context.PROVIDER\u URL,“http远程处理:/”+地址)代码>。您的bean的命名可能也不同,但我不熟悉JNP。请查看是否可以在此处获得更多信息:。