我試圖(單元)測試我的EJB類,而無需啓動我的websphere環境。現在我正在使用Open EJB,但在解決EJB中使用的其他EJB的JNDI名稱時存在一些問題......並且現在無法從我的測試中注入模擬類。使用Open EJB配置JNDI名稱
獲取InitialContext的
final Properties properties = new Properties();
properties.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.LocalInitialContextFactory");
properties.setProperty("log4j.category.OpenEJB.options ", "debug");
properties.setProperty("log4j.category.OpenEJB.startup ", "debug");
properties.setProperty("log4j.category.OpenEJB.startup.config ", "debug");
properties.setProperty("MyOwnDatasource.JdbcDriver ", "com.ibm.as400.access.AS400JDBCDriver");
properties.setProperty("MyOwnDataSource.JdbcUrl ", "jdbc:as400:MYHOSTNAME;database name=MYDATABASE;libraries=MYDEFAULTTABLE");
ic = new InitialContext(properties);
裏面我的課測試沒有用於java:comp/env/ejb/PrefixEjbNameLocalHome
查找,我不能設置打開EJB生成該格式的JNDI名稱。
爲JNDI名稱格式的附加屬性
我嘗試設置格式規則是這樣的:
properties.setProperty("openejb.jndiname.format ", "comp/env/ejb/{interfaceClass}");
屬性不被使用?
另外,不使用日誌記錄配置。我只能看見INFO和WARN從打開EJB的消息,雖然我設置log4j.category.OpenEJB.*
等以DEBUG或TRACE。
哇感謝。我一直在爲此奮戰一段時間。特別是要找到一個可以在使用openEjb進行測試並在Tomee上部署時查找的名稱。 – AmanicA 2014-05-09 16:31:19