[Seasar-user:16661] [S2JDBC]Maven2 surefireレポート作成時にArrayIndexOutOfBoundsException
Makoto SAITO
[E-MAIL ADDRESS DELETED]
2009年 1月 13日 (火) 19:24:33 JST
齊藤と申します。
SAStruts+S2JDBCでアプリケーションを開発しています。
今回、Maven2を利用してサイト作成を自動で行うようにしているのですが、
site-deployゴールを設定したときにCoberturaレポートの作成時に例外が発生します。
#surefire:testゴール設定時にはエラーが発生しません。
target/surefire-reportsディレクトリ以下に下記スタックトレースが残るのですが、
何か原因お分かりになるでしょうか?
【環境】
・Seasar2 ver.2.4.29
・SAStruts ver.1.0.4-sp1
・S2JUnit4
・JDK 1.5.0_15
-------------------------------------------------------------------------------
Test set: xxx.service.auth.AuthenticationServiceTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.234 sec <<< FAILURE!
testIsAuthOk(xxx.service.auth.AuthenticationServiceTest) Time elapsed: 0.219 sec <<< ERROR!
org.seasar.framework.exception.InvocationTargetRuntimeException: [ESSR0043]xxx.service.auth.AuthenticationService$$EnhancedByS2AOP$$257f1bが呼び出した対象が不正です。理由はjava.lang.ArrayIndexOutOfBoundsException: 0
at org.seasar.framework.util.ConstructorUtil.newInstance(ConstructorUtil.java:65)
at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assembleDefault(AbstractConstructorAssembler.java:115)
at org.seasar.framework.container.assembler.AutoConstructorAssembler.doAssemble(AutoConstructorAssembler.java:44)
at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assemble(AbstractConstructorAssembler.java:55)
at org.seasar.framework.container.deployer.PrototypeComponentDeployer.deploy(PrototypeComponentDeployer.java:42)
at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:111)
at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:129)
at org.seasar.framework.unit.impl.SimpleInternalTestContext.getComponent(SimpleInternalTestContext.java:291)
at org.seasar.framework.unit.S2TestMethodRunner.bindField(S2TestMethodRunner.java:515)
at org.seasar.framework.unit.S2TestMethodRunner.bindFields(S2TestMethodRunner.java:471)
at org.seasar.framework.unit.S2TestMethodRunner.runMethod(S2TestMethodRunner.java:249)
at org.seasar.framework.unit.S2TestMethodRunner.run(S2TestMethodRunner.java:171)
at org.seasar.framework.unit.S2TestClassMethodsRunner.invokeTestMethod(S2TestClassMethodsRunner.java:227)
at org.seasar.framework.unit.S2TestClassMethodsRunner.run(S2TestClassMethodsRunner.java:89)
at org.seasar.framework.unit.S2TestClassRunner.run(S2TestClassRunner.java:67)
at org.seasar.framework.unit.Seasar2.run(Seasar2.java:168)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:138)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:125)
at org.apache.maven.surefire.Surefire.run(Surefire.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:818)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at org.seasar.framework.util.tiger.GenericUtil.gatherTypeVariables(GenericUtil.java:292)
at org.seasar.framework.util.tiger.GenericUtil.getTypeVariableMap(GenericUtil.java:254)
at org.seasar.extension.jdbc.service.S2AbstractService.<init>(S2AbstractService.java:67)
at xxx.service.auth.AuthenticationService.<init>(AuthenticationService.java:22)
at xxx.service.auth.AuthenticationService$$EnhancedByS2AOP$$257f1b.<init>(AuthenticationService$$EnhancedByS2AOP$$257f1b.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at org.seasar.framework.util.ConstructorUtil.newInstance(ConstructorUtil.java:57)
... 25 more
Seasar-user メーリングリストの案内