org/jnp/interfaces 包没有找到,在lib目录下有该包,你可以解压到你得目录或者在classpath里面设置该路径就可以了

解决方案 »

  1.   

    一般是在容器的deploy/lib目录下,我不知道你用的是什么容器运行,我用的是jboss3.2.3,那么我就在e:/jboss3.2.3/server/deploy/lib/下面找到jnpserver.jar这个包,你可以把这个包的路径加到classpath中,也可以把这个包解压到与你的程序在同一个目录下就可以了.象这种找不到class错误大多都是因为他找不到包,你可以手工挨个打开jar包看看里面有没有你想要的类,找到这些包,然后把路径告诉编译器就可以了,说的这么详细是不是该揭贴了啊?有问题在问.
      

  2.   

    老大
    我的是jboss-3.2.4 按你的做了 没用呀
    可恶的jndi能发个完整的例子吗?
    [email protected]
    谢谢!
    先加分给你罗!!
      

  3.   

    不会啊,我前面也遇到你得这个问题,然后我就把jnpserver.jar这个包解开,取里面得org文件夹放到你得测试程序同一目录下就可以了啊,你照我得做肯定是没错得。你得问题是包没有找到,那么你把包路径找到了就肯定行得。如有问题,可以看我得那篇讲调试ejb得帖子.如果还报错,你要看清楚是不是还是原来得错啊。照我得经验,你后面还会有很多包找不到,需要你自己手工找到告诉编译器得。
      

  4.   

    现在是:
    Exception in thread "main" java.lang.NoClassDefFoundError: org/jboss/logging/Log
    ger
            at org.jnp.interfaces.NamingContext.<clinit>(NamingContext.java:102)
            at org.jnp.interfaces.NamingContextFactory.getInitialContext(NamingConte
    xtFactory.java:41)
            at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
    62)
            at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243
    )
            at javax.naming.InitialContext.init(InitialContext.java:219)
            at javax.naming.InitialContext.<init>(InitialContext.java:195)
            at greet.GreetClient.main(GreetClient.java:18)
    不会真的一个一个找把?有别的方法吗?
    另外能在jboss 中部署jsp+bean+servlet的程序吗?
    如能怎么做请指点!
    谢谢!
    解决后加高分!
      

  5.   

    .;D:\j2sdk1.4.2\lib;D:\j2sdk1.4.2\lib\tools.jar;E:\jboss-3.2.3\server\default\lib\jboss-j2ee.jar;E:\jboss-3.2.3\server\default\lib\jnpserver.jar;E:\jboss-3.2.3\server\default\lib\javax.servlet.jar;E:\jboss-3.2.3\client\jbossall-client.jar;E:\jboss-3.2.3\client\jnet.jar;E:\jboss-3.2.3\client\log4j.jar;E:\jboss-3.2.3\server\default\lib\jboss.jar;E:\jboss-3.2.3\server\default\lib\jboss-transaction.jar我以前是一个一个找得,classpath 这样配置成这样就可以了。
    部署jsp+bean+servlet 我没有配过。
      

  6.   

    应该是这
      System.setProperty("java.naming.factory.initial", 
    "org.jnp.interfaces.Naming ContextFactory");
      System.setProperty("java.naming.provider.url", 
    "localhost:1099");设置错误吧。
    你把它换成:
        Properties p = new Properties();    p.setProperty(javax.naming.Context.PROVIDER_URL,
                               PROVIDER_URL);//PROVIDER_URL与服务器类型有关。    p.setProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY,
                            INITIAL_CONTEXT_FACTORY);    InitialContext jndiContext = new InitialContext(p);