EJB 2を使用して最初に作成したプロジェクトをSpringに移行した後、すべてJBoss Seam 2.2.0に移行しました(これは、私が扱っている)。これはTomcat上で動作しますが、現在はJBoss 4.2上で実行されています(この事実は無関係ですが)。私の仕事は、最後の移行の前に書かれたすべてのテストを実行することです。SeamプロジェクトでSeamプロジェクトでテストを実行する
グーグルの多くの後、私はこのような何かを書いた:
:私はCustomUserDAOBeanとその依存関係のインスタンスを取得するために管理が、私は、テストを実行したときに、私は別の問題を得るためpublic class CustomUserDAOTest extends SeamTest {
@Test
public void f() throws Exception {
new ComponentTest() {
@Override
protected void testComponents() throws Exception {
CustomUserDAO customUserDAO = (CustomUserDAO) Component.getInstance(CustomUserDAOBean.class);
List<CustomUser> users = customUserDAO.getAll();
assertNotNull(users);
}
}.run();
}
}
良いです
java.lang.RuntimeException: exception invoking: getTransaction
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:154)
at org.jboss.seam.Component.callComponentMethod(Component.java:2249)
at org.jboss.seam.Component.unwrap(Component.java:2275)
at org.jboss.seam.Component.getInstance(Component.java:2041)
[OMITTED]
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
at br.com.visent.sicorp.server.dao.impl.CustomUserDAOBean_$$_javassist_seam_1.listAll(CustomUserDAOBean_$$_javassist_seam_1.java)
at br.com.visent.sicorp.server.dao.test.CustomUserDAOTest$1.testComponents(CustomUserDAOTest.java:24)
at org.jboss.seam.mock.AbstractSeamTest$ComponentTest.run(AbstractSeamTest.java:162)
[OMITTED]
at org.testng.TestNG.run(TestNG.java:856)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:110)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:205)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:174)
Caused by: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
[OMITTED]
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
... 45 more
私はWeb上でいくつかのコメントを見つけましたが、解決策は見つかりませんでした。私は何をすべきか?誰かにアイデアはありますか?
ありがとうございます!
seam-genプロジェクトを作成してプロジェクトに対してdiffを実行して、設定やその他のことが間違っていないかどうかを確認するのはなぜですか? –
Shervin、あなたの提案は素晴らしかった!私は以下の自分の質問に答えます。ありがとうございました! – brandizzi