我也在初学EJB,我的运行通过(jboss):
注意把 G:\jboss-4.0.3RC1\client中的jar放到CLASSPATH 或 -classpach 中public static void main(String[] args) {
System.out.println("start..."); Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
env.put(Context.URL_PKG_PREFIXES,
"org.jboss.naming:org.jnp.interfaces");
env.put(Context.PROVIDER_URL, "jnp://localhost:1099"); TestHome testHome = null; try {
Context ctx = new InitialContext(env); System.out.println("lookup");
Object lObj = ctx.lookup("MyFirstEJB");

System.out.println("narrow");
Object nObject = PortableRemoteObject.narrow(lObj, TestHome.class); testHome = (TestHome) nObject; } catch (NamingException ne) {
ne.printStackTrace();
System.out.println(ne.getMessage());
} Test test = null;
try {
test = testHome.create();
} catch (Exception ex) {
System.out.println("exception:" + ex.getMessage());
System.exit(0);
} try {
System.out.println(test.getString());
test.remove();
test = null;

} catch (Exception ex) { }
}但我如果放到jsp中,却运行到 test = testHome.create(); 时jboss中报错,不知为何.

解决方案 »

  1.   

    第一,个人感觉是你有个jar包可能缺少,可能少jbossall-client.jar第二,建议用个简单的测试程序,可以参照myeclipse官方网站的文档
      

  2.   

    第一,个人感觉是你有个jar包可能缺少,可能少jbossall-client.jar同意第二:同意wnjer(WNJER
      

  3.   

    我试了网上很多例子,好像都没提过需要jbossall-client.jar,
    如果需要,那要怎么做呢?谢谢!
      

  4.   

    不好意思,刚才没仔细看,是不是需要设环境变量,加入所有的jar包
    或只加入jbossall-client.jar包?