最近在学习 ejb开发
现在遇到个问题,就是 开发local的session bean过程中.
我先按照ejb规范写 好接口实现类 然后打成jar包.
然后我在创建一个web工程
然后将web工程放到jboss6.0里,然后将如上的本地session bean打成的jar包放到 jboss的 deploy目录下问题是 在web工程里我该怎么调用啊我是将 如上的session bean jar包放到 这个web项目的类类路径里
还是将 这个session bean 的接口放到 这个web项目的web/class 目录下
希望有人解答
现在遇到个问题,就是 开发local的session bean过程中.
我先按照ejb规范写 好接口实现类 然后打成jar包.
然后我在创建一个web工程
然后将web工程放到jboss6.0里,然后将如上的本地session bean打成的jar包放到 jboss的 deploy目录下问题是 在web工程里我该怎么调用啊我是将 如上的session bean jar包放到 这个web项目的类类路径里
还是将 这个session bean 的接口放到 这个web项目的web/class 目录下
希望有人解答
解决方案 »
- FCKeditor整合struts后,从数据库查出来的数据在页面上显示总是带有html标签问题解决
- 在装maven时遇到的问题,求教!!
- 小妹请教下关于spring,初学,请前辈帮帮忙
- 高人帮看下呢
- Struts2里怎么移除Session里的某个对象
- java 查询sql server 只有英文时没错,一旦字段中包括英文和数字是 不能查询
- jsp乱码问题
- 后台的web,拥有几个前台的web 怎么做
- 各位大大帮帮忙阿 tomcat连接oracle的问题
- xmlDocument对象对应的xml格式内容可以输入到字符串中?
- jdk版本问题(请解决过的人帮我分析下)..myeclipse与tomcat使用的jdk引发的问题
- s2sh 中的sping注入
Exception in thread "main" javax.naming.NamingException: Could not dereference object [Root exception is java.lang.RuntimeException: Could not find proxyfactory at ProxyFactory/catservice/CatServiceBean/CatServiceBean/local -looking up local Proxy from Remote JVM?]
at org.jnp.interfaces.NamingContext.getObjectInstanceWrapFailure(NamingContext.java:1508)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:824)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:688)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at catservice.Test.main(Test.java:15)
Caused by: java.lang.RuntimeException: Could not find proxyfactory at ProxyFactory/catservice/CatServiceBean/CatServiceBean/local -looking up local Proxy from Remote JVM?
at org.jboss.ejb3.proxy.impl.objectfactory.ProxyObjectFactory.getObjectInstance(ProxyObjectFactory.java:150)
at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
at org.jnp.interfaces.NamingContext.getObjectInstance(NamingContext.java:1483)
at org.jnp.interfaces.NamingContext.getObjectInstanceWrapFailure(NamingContext.java:1500)
... 4 more
Caused by: org.jboss.ejb3.common.registrar.spi.NotBoundException: Could not retrieve Ejb3Registrar as a registrar implementation has not yet been bound.
at org.jboss.ejb3.common.registrar.spi.Ejb3RegistrarLocator.locateRegistrar(Ejb3RegistrarLocator.java:85)
at org.jboss.ejb3.proxy.impl.objectfactory.ProxyObjectFactory.getObjectInstance(ProxyObjectFactory.java:140)
... 7 more
我怀疑是jar包的问题
因为 我用的 jboss版本是jboss-6.0.0.Final
我把client中的所有jar包导进去就会报错 但是如果只导入
jnp-client,jboss-logging,jbossall-client
就会报出
Exception in thread "main" java.lang.ClassCastException: javax.naming.Reference cannot be cast to catservice.CatService
at catservice.Test.main(Test.java:15)这个错误 我知道 是缺少jar包
求我到底该导入什么jar包 谢谢大侠了!!!!
public static InitialContext ctx;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
ctx = new InitialContext(props);
}
@AfterClass
public static void setUpAfterClass()throws Exception{
ctx.close();
}
}public class TestSuitExample extends GenericEJBTestCase {
IInterface interfaceexample;
@Before
public void BeforeTestExample()throws Exception{
interfaceexample=(接口) ctx.lookup("EJB名称(查看Jboss)"); }
@Test
public void TestExample()throws Exception{
//Test code
}
现在唯一的问题就是: 我用的 jboss的版本是 jboss-6.0.0.Final
我需要哪些 client下的jar
或者告诉我该怎么去找?????
public static InitialContext ctx;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
ctx = new InitialContext(props);
}
@AfterClass
public static void setUpAfterClass()throws Exception{
ctx.close();
}
}
EJB暂时还没用过
请问 打成ear包有什么效果????
现在我的 问题很明确 就是 session bean local 需要 jboss6.0.final client目录下的哪些jar包
package catservice;import java.util.HashMap;
import java.util.Map;import javax.ejb.Stateless;@Stateless
public class CatServiceBean implements CatService {
static Map<Integer,Cat[]> catsInfo;
static {
catsInfo=new HashMap<Integer,Cat[]>();
catsInfo.put(1, new Cat[]{
new Cat(1,"donkey"),
new Cat(2,"shrek"),
});
}
@Override
public Cat[] getCats(Integer number) {
Cat[] cats=catsInfo.get(number);
for(Cat cat:cats){
System.out.println("--------------------");
System.out.println("宠物的姓名是:"+cat.getName());
System.out.println("宠物年龄是"+cat.getAge());
System.out.println("--------------------");
}
return cats;
}
}如上 如果返回的 是 Cat[] 就会报错 说
java.lang.ClassCastException: [Lcatservice.Cat; cannot be cast to [Lcatservice.Cat;
$Proxy136.getCats(Unknown Source)这个是local session bean 我真是要疯掉了 实在不知道 这到底是什么情况!!!!!!!