-
Notifications
You must be signed in to change notification settings - Fork 38
Description
I use seasar2 first time as web project,In IndexAction.java when I use
@resource
protected AbcService abcService
java.lang.illegalargumentException happened
but when I only used
@resource
protected AbcLogic abcLogic
everhthing ok,only happned in "Service"??
public class AbcServiceImpl {
public List<String> search(){
return null;
}
}
public interface AbcService {
public List search();
}
Class IndexAction
@resource
protected AbcLogic abcLogic;
@Resource
protected AbcService abcService;
@Execute(validator=false)
public String index() throws Exception {
return "index.jsp";
}
Caused by: org.seasar.framework.exception.SIllegalArgumentException: [ESSR0094]IllegalArgumentExceptionがクラス(sra.action.IndexAction)[ModuleClassLoader for Module "deployment.SysRelationApi.war:main" from Service Module Loader]の型(sra.service.AbcService)[ModuleClassLoader for Module "deployment.SysRelationApi.war:main" from Service Module Loader]のフィールド(abcService)に型(sra.service.impl.AbcServiceImpl$$EnhancedByS2AOP$$854e9b)[ModuleClassLoader for Module "deployment.SysRelationApi.war:main" from Service Module Loader]の値(sra.service.impl.AbcServiceImpl$$EnhancedByS2AOP$$854e9b@b2e813)を設定するときに発生しました。対象のクラスは(sra.action.IndexAction$$EnhancedByS2AOP$$b01fc0)[ModuleClassLoader for Module "deployment.SysRelationApi.war:main" from Service Module Loader]です。
at org.seasar.framework.util.FieldUtil.set(FieldUtil.java:171)
at org.seasar.framework.container.assembler.AbstractBindingTypeDef.setValue(AbstractBindingTypeDef.java:346)
at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bindAuto(AbstractBindingTypeDef.java:151)
at org.seasar.framework.container.assembler.BindingTypeMustDef.doBind(BindingTypeMustDef.java:45)
at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bind(AbstractBindingTypeDef.java:91)
at org.seasar.framework.container.assembler.AccessTypeFieldDef.bind(AccessTypeFieldDef.java:50)
at org.seasar.framework.container.assembler.AccessTypeFieldDef.bind(AccessTypeFieldDef.java:42)
at org.seasar.framework.container.assembler.AutoPropertyAssembler.assemble(AutoPropertyAssembler.java:56)
at org.seasar.framework.container.deployer.RequestComponentDeployer.deploy(RequestComponentDeployer.java:67)
at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:111)
at org.seasar.struts.config.S2ActionMapping.getActionForm(S2ActionMapping.java:329)
at org.seasar.struts.action.ActionFormWrapper.(ActionFormWrapper.java:62)
at org.seasar.struts.action.ActionFormWrapperClass.newInstance(ActionFormWrapperClass.java:82)
at org.seasar.struts.config.S2FormBeanConfig.createActionForm(S2FormBeanConfig.java:44)
at org.seasar.struts.action.S2RequestProcessor.processActionForm(S2RequestProcessor.java:211)
at org.seasar.struts.action.S2RequestProcessor.process(S2RequestProcessor.java:103)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
at org.seasar.extension.filter.RequestDumpFilter.doFilter(RequestDumpFilter.java:127)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:79)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:71)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:274)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchToPath(ServletInitialHandler.java:209)
at io.undertow.servlet.spec.RequestDispatcherImpl.forwardImpl(RequestDispatcherImpl.java:221)
... 52 more
Caused by: java.lang.IllegalArgumentException: Can not set sra.service.AbcService field sra.action.IndexAction.abcService to sra.service.impl.AbcServiceImpl$$EnhancedByS2AOP$$854e9b
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:167)
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:171)
at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:81)
at java.lang.reflect.Field.set(Field.java:758)
at org.seasar.framework.util.FieldUtil.set(FieldUtil.java:162)