Cannot instantiate class: org.jnp.interfaces.NamingContextFactory

问题描述

错误信息如下:18:04:02,358 ERROR [STDERR] javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory ]18:04:02,359 ERROR [STDERR] at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)18:04:02,359 ERROR [STDERR] at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)18:04:02,359 ERROR [STDERR] at javax.naming.InitialContext.init(Unknown Source)18:04:02,359 ERROR [STDERR] at javax.naming.InitialContext.<init>(Unknown Source)18:04:02,359 ERROR [STDERR] at servlet.SampleServlet.initBean(SampleServlet.java:92)出现错误的代码如下:package servlet;......public class SampleServlet extends HttpServlet{......private void initBean()throws ServletException{try{Properties properties = new Properties();//这里报错properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory ");properties.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces ");properties.setProperty(Context.PROVIDER_URL, "localhost:1099"); initialContext = new InitialContext(properties);Object objref = initialContext.lookup("security-sample/UserManagement");Object obj = PortableRemoteObject.narrow(objref,UserManagementHome.class);home = (UserManagementHome)obj;bean = home.create();}catch (CreateException e1) {e1.printStackTrace();throw new ServletException(e1.getMessage());}catch(NamingException ne){ne.printStackTrace();throw new ServletException(ne.getMessage());}catch (RemoteException e) { e.printStackTrace();}}......}在网上找了各种方法,都试过了,都不好使。1、把javaall-client.jar、jnp-client.jar文件放到Java Build Path里2、classpath里加%JBoss Home%clientjbossall-client.jar都不好使,希望高手能给予帮助 问题补充:zhangjiai1 写道

解决方案

第一,不需要拷贝任何包。因为你的war部署在jboss中,jboss已经加载了client中的jar第二,出现错误的原因是引用properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory "); properties.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces "); 多了一个空格
解决方案二:
好像也不是空格的原因哦。

时间: 2024-11-08 21:17:18

Cannot instantiate class: org.jnp.interfaces.NamingContextFactory的相关文章

Cannot instantiate class: org.jnp.interfaces.NamingContextFactory [Root excepti

问题描述 我测试远程查找时,已经在工程中导入了jbossall-client.jar包,用main函数测试没问题,写到jsp,servlet,action中,还是报这个错:Cannotinstantiateclass:org.jnp.interfaces.NamingContextFactory[Rootexceptionisjava.lang.ClassNotFoundException:org.jnp.interfaces.NamingContextFactory]这是为什么呢? 解决方案

exception-eclipse+wildfly10创建简单Ejb实例出错

问题描述 eclipse+wildfly10创建简单Ejb实例出错 package ejb3;//HelloWorld接口 public interface HelloWorld { public String SayHello(String name); } package ejb3.impl;//HelloWorldBean实现接口HelloWorld import ejb3.HelloWorld; import javax.ejb.*; @Stateless @Remote({HelloW

EJB 3.0+Beehive开发客户反馈系统

设计目标 客户反馈系统作为公司与客户交流的平台,几乎为所有的企业所运用,最近,公司让我负责客户反馈系统的开发.由于,公司与国外客户的业务需要,该系统必须实现中,英,日三国语言的切换(国际化要求).在接到任务之后,我便决定尝试使用目前开源社区比较流行的Apache Beehive(蜂巢)和下一代EJB,EJB3.0等技术来实现这个系统. 开发环境 选择平台,开发工具 为了支持EJB3.0和Beehive,我们选择JBoss4.0.3应用服务器作为运行平台,它也是目前唯一提供EJB3.0容器的应用服

Lomboz中配置JBoss 4.0.1

     这个文章是对<Eclipse快速上手EJB -- 1. Lomboz + JBoss-IDE 配置1 >一文的一点补充.在那篇文章中,jboss400.server这个配置是针对JBoss 4.0.0 的,如果使用的是JBoss 4.0.1,需要使用以下的配置文件: jboss401.server   <serverDefinition name="JBOSS 4.0.1" ejbModules="true" webModules=&qu

原来Eclipse3.0.1中的jboss32x.server文件不匹配JBoss3.2.6!郁闷~

server 从今天下午开始就一直在Eclipse中配置JBoss,由于原来用的是JBoss3.0.0,现在想用JBoss3.2.6. 于是就重新配置.但是配置好了以后,却发现会报告jar文件路径出错,一共有两个:一个是jboss-3.2.6\lib\jboss-boot.jar找不到,一个是jboss-3.2.6 erver\default\lib\javax-servlet.jar找不到. 用UE32打开eclipse\plugins\com.objectlearn.jdt.j2ee_3.0

JBoss下的EJB3开发无状态会话Bean

1.开发一个具有Remote和Local接口的EJB3 Stateless SessionBean.如有那里写的不好请大家多多指教.################################ 好了先介绍一下明星演员们:###############################Remote接口:RemoteHelloWorld.javaLocal接口:LocalHelloWorld.javaSessionBean:HelloWorldBean.javaJNDI配置:jndi.proper

JavaEE规范学习(一)--- JNDI

 概述      JNDI(JavaNaming and Directory Interface,Java命名和目录接口)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI服务供应接口(SPI)的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互.目录服务是命名服务的一种自然扩展.两者之间的关键差别是目录服务中对象不但可以有名称还可以有属性(例如,用户有ema

Spring对JNDI的支持方法

Spring对JNDI的支持  Spring中对于JNDI的访问,提供了便捷的方法,在Spring的org.springframework.jndi包中包含了所有的类.其中提供了一下核心类:  1)JndiTemplate:它是这个包的核心类,用来简化对JNDI的操作.它提供了对于lookup.bind方法.  <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 

[jmeter]-hornetq测试

I figured out the problem, for the benefits of others. 1. These are the jars needed in jmeter/lib : netty.jar,jboss-jms-api.jar,netty.jar,jnp-client.jar,hornetq-transports.jar,hornetq-jms-client.jar,hornetq-core-client.jar 2. use the connection facto