例外の対処方法がわからん(T^T)

例によって、多分俺が悪いんだけどw 何が悪いのか発見できない><;

org.ashikunep.irenka.dom.converter.jls.JlsLinkExceptionというのがしばしば発生する。下記のGetNodesProcessor(Jiemamyのクラス)以外にも、この辺りの型に対して、しばしば怒っているのを見かけるなぁ。共通項はなんだろう…。

  • org.seasar.framework.util.Disposable
  • org.seasar.framework.util.ArrayMap
  • org.apache.commons.io.IOUtils
  • org.junit.runner.RunWith


org.ashikunep.irenka.dom.converter.jls.JlsLinkException: [new GetNodesProcessor(TableModel.class)] does not refer to a valid CtConstructor (org.ashikunep.irenka.jls.impl.JlsElementFactoryImpl@5212)
at org.ashikunep.irenka.dom.converter.jls.JlsAttributeUtil.validateReference(JlsAttributeUtil.java:772)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.validateReference(JlsElement2CtElement.java:1470)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.buildNewInstance(JlsElement2CtElement.java:691)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitClassInstanceCreationExpression(JlsElement2CtElement.java:659)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitClassInstanceCreationExpression(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsClassInstanceCreationExpressionImpl.accept(JlsClassInstanceCreationExpressionImpl.java:60)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.expressions(JlsElement2CtElement.java:1434)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1010)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsMethodInvocationExpressionImpl.accept(JlsMethodInvocationExpressionImpl.java:59)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.resolveTypeOrExpression(JlsElement2CtElement.java:1465)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1021)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsMethodInvocationExpressionImpl.accept(JlsMethodInvocationExpressionImpl.java:59)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.expressions(JlsElement2CtElement.java:1434)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1010)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitMethodInvocationExpression(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsMethodInvocationExpressionImpl.accept(JlsMethodInvocationExpressionImpl.java:59)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitExpressionStatement(JlsElement2CtElement.java:807)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitExpressionStatement(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsExpressionStatementImpl.accept(JlsExpressionStatementImpl.java:52)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.fillStatements(JlsElement2CtElement.java:1285)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitBlock(JlsElement2CtElement.java:589)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitBlock(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsBlockImpl.accept(JlsBlockImpl.java:54)
at org.ashikunep.irenka.dom.converter.jls.JlsElementCompiler.compile(JlsElementCompiler.java:108)
at org.ashikunep.irenka.dom.info.jls.JlsMethodOrConstructorInfo.takeBody(JlsMethodOrConstructorInfo.java:102)
at org.ashikunep.irenka.dom.impl.AbstractCtInvocableMaster.getBody(AbstractCtInvocableMaster.java:298)
at org.ashikunep.irenka.dom.impl.CtMethodMaster.accept(CtMethodMaster.java:156)
at org.ashikunep.irenka.dom.impl.AbstractCtDeclaredTypeMaster.accept(AbstractCtDeclaredTypeMaster.java:716)
at org.ashikunep.irenka.query.util.QueryConverter.collect(QueryConverter.java:104)
at org.ashikunep.irenka.hack.ir.IrHackTarget.getTargetUniverse(IrHackTarget.java:65)
at org.ashikunep.irenka.hack.ir.IrHackAction.newCursor(IrHackAction.java:125)
at org.ashikunep.irenka.hack.ir.IrHackAction.newCursor(IrHackAction.java:97)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyMatchActionToTarget(DefaultHackApplier.java:216)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyHackToTarget(DefaultHackApplier.java:173)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyHackToAll(DefaultHackApplier.java:129)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.apply(DefaultHackApplier.java:79)
at org.ashikunep.irenka.hack.engine.AbstractHackEngine.applyHacks(AbstractHackEngine.java:123)
at org.ashikunep.irenka.hack.engine.AbstractHackEngine.process(AbstractHackEngine.java:81)
at org.ashikunep.irenka.studio.hack.launch.LaunchBuildEngine.actionHack(LaunchBuildEngine.java:64)
at org.ashikunep.irenka.build.engine.IrenkaBuildEngine.build(IrenkaBuildEngine.java:54)
at org.ashikunep.irenka.studio.hack.launch.HackLaunchConfigration.launch(HackLaunchConfigration.java:81)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:759)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:608)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:899)
at org.eclipse.debug.internal.ui.DebugUIPlugin$7.run(DebugUIPlugin.java:1102)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

また、ぬるぽが飛ぶこともあり、ClassCastExceptionもあり。


java.lang.NullPointerException
at org.ashikunep.irenka.toolkit.impl.AbstractSynthesizer.getWellKnownClass(AbstractSynthesizer.java:209)
at org.ashikunep.irenka.toolkit.impl.AbstractSynthesizer.getJavaLangObject(AbstractSynthesizer.java:174)
at org.ashikunep.irenka.dom.info.jls.JlsTypeInfo.newSyntheticObjectClass(JlsTypeInfo.java:134)
at org.ashikunep.irenka.dom.info.jls.JlsClassInfo.takeSuperType(JlsClassInfo.java:98)
at org.ashikunep.irenka.dom.impl.AbstractCtDeclaredTypeMaster.getSuperClass(AbstractCtDeclaredTypeMaster.java:228)
at org.ashikunep.irenka.util.impl.MemberUtil.findMember(MemberUtil.java:409)
at org.ashikunep.irenka.util.impl.MemberUtil.findType(MemberUtil.java:114)
at org.ashikunep.irenka.dom.impl.AbstractCtDeclaredTypeMaster.getMemberType(AbstractCtDeclaredTypeMaster.java:476)
at org.ashikunep.irenka.dom.converter.jls.context.CtDeclaredTypeContextUnit.findType(CtDeclaredTypeContextUnit.java:67)
at org.ashikunep.irenka.dom.converter.jls.context.CtElementContextUnit.findType(CtElementContextUnit.java:107)
at org.ashikunep.irenka.dom.converter.jls.context.DefaultCompilerContext.findType(DefaultCompilerContext.java:108)
at org.ashikunep.irenka.dom.converter.jls.JlsNameConverter.convertAsType(JlsNameConverter.java:122)
at org.ashikunep.irenka.dom.converter.jls.JlsNameConverter.convert(JlsNameConverter.java:95)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitNamedType(JlsElement2CtElement.java:1065)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitNamedType(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsNamedTypeImpl.accept(JlsNamedTypeImpl.java:52)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitParameterizedType(JlsElement2CtElement.java:1116)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitParameterizedType(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsParameterizedTypeImpl.accept(JlsParameterizedTypeImpl.java:55)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitFormalParameter(JlsElement2CtElement.java:833)
at org.ashikunep.irenka.dom.converter.jls.JlsElement2CtElement.visitFormalParameter(JlsElement2CtElement.java:1)
at org.ashikunep.irenka.jls.impl.generated.JlsFormalParameterImpl.accept(JlsFormalParameterImpl.java:60)
at org.ashikunep.irenka.dom.converter.jls.JlsElementCompiler.compile(JlsElementCompiler.java:108)
at org.ashikunep.irenka.dom.info.jls.JlsMethodOrConstructorInfo.fillParameters(JlsMethodOrConstructorInfo.java:70)
at org.ashikunep.irenka.dom.impl.AbstractCtInvocableMaster.getParameters(AbstractCtInvocableMaster.java:272)
at org.ashikunep.irenka.dom.impl.AbstractCtInvocableMaster.getParameters(AbstractCtInvocableMaster.java:1)
at org.ashikunep.irenka.util.impl.ElementDeactivator.invocable(ElementDeactivator.java:156)
at org.ashikunep.irenka.util.impl.ElementDeactivator.visitMethodMaster(ElementDeactivator.java:170)
at org.ashikunep.irenka.util.impl.ElementDeactivator.visitMethodMaster(ElementDeactivator.java:1)
at org.ashikunep.irenka.dom.impl.CtMethodMaster.accept(CtMethodMaster.java:133)
at org.ashikunep.irenka.dom.impl.AbstractCtInvocableMaster.dispose(AbstractCtInvocableMaster.java:99)
at org.ashikunep.irenka.dom.impl.AbstractCtDeclaredTypeMaster.dispose(AbstractCtDeclaredTypeMaster.java:114)
at org.ashikunep.irenka.toolkit.impl.ReferenceMasterManagerImpl.removeReferenceMaster(ReferenceMasterManagerImpl.java:79)
at org.ashikunep.irenka.toolkit.impl.AbstractSynthesizer.removeReferenceMaster(AbstractSynthesizer.java:841)
at org.ashikunep.irenka.toolkit.impl.DeclarationFactoryImpl.dispose(DeclarationFactoryImpl.java:713)
at org.ashikunep.irenka.toolkit.impl.AbstractSynthesizer.dispose(AbstractSynthesizer.java:825)
at org.ashikunep.irenka.studio.JdtPreHackProcessor.dropCompilationUnit(JdtPreHackProcessor.java:112)
at org.ashikunep.irenka.studio.JdtPreHackProcessor.dropCompilationUnits(JdtPreHackProcessor.java:105)
at org.ashikunep.irenka.studio.JdtPreHackProcessor.process(JdtPreHackProcessor.java:45)
at org.ashikunep.irenka.studio.JdtIrenkaBuildEngine.preProcess(JdtIrenkaBuildEngine.java:48)
at org.ashikunep.irenka.build.engine.IrenkaBuildEngine.build(IrenkaBuildEngine.java:53)
at org.ashikunep.irenka.studio.IrenkaBuilder.build(IrenkaBuilder.java:95)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:624)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:166)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:197)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:246)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:249)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:302)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:334)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)


java.lang.ClassCastException: java.lang.String cannot be cast to org.ashikunep.irenka.dom.CtElement
at org.ashikunep.irenka.query.ir.property.NavigatedProperty.apply(NavigatedProperty.java:98)
at org.ashikunep.irenka.query.ir.engine.SegmentResolver.visitProperty(SegmentResolver.java:109)
at org.ashikunep.irenka.query.ir.engine.SegmentResolver.visitProperty(SegmentResolver.java:1)
at org.ashikunep.irenka.query.ir.IrProperty.accept(IrProperty.java:88)
at org.ashikunep.irenka.query.ir.engine.ConstraintSegment.performPropagate(ConstraintSegment.java:140)
at org.ashikunep.irenka.query.ir.engine.ConstraintSegment.resolve(ConstraintSegment.java:82)
at org.ashikunep.irenka.query.ir.engine.IrQueryCursor.resolveSegment(IrQueryCursor.java:221)
at org.ashikunep.irenka.query.ir.engine.IrQueryCursor.push(IrQueryCursor.java:248)
at org.ashikunep.irenka.query.ir.engine.IrQueryCursor.prepare(IrQueryCursor.java:129)
at org.ashikunep.irenka.query.ir.engine.IrQueryCursor.hasNext(IrQueryCursor.java:81)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyActionToTarget(DefaultHackApplier.java:280)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyMatchActionToTarget(DefaultHackApplier.java:217)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyHackToTarget(DefaultHackApplier.java:173)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.applyHackToAll(DefaultHackApplier.java:129)
at org.ashikunep.irenka.apply.impl.DefaultHackApplier.apply(DefaultHackApplier.java:79)
at org.ashikunep.irenka.hack.engine.AbstractHackEngine.applyHacks(AbstractHackEngine.java:123)
at org.ashikunep.irenka.hack.engine.AbstractHackEngine.process(AbstractHackEngine.java:81)
at org.ashikunep.irenka.studio.JdtIrenkaBuildEngine.actionHack(JdtIrenkaBuildEngine.java:55)
at org.ashikunep.irenka.build.engine.IrenkaBuildEngine.build(IrenkaBuildEngine.java:54)
at org.ashikunep.irenka.studio.IrenkaBuilder.build(IrenkaBuilder.java:95)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:624)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:166)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:197)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:246)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:249)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:302)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:334)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:137)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

ぬーー。動かないのが悔しい…orz