Exception while registering Interceptor class
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor
-----------------------------------------------------------------------------------------------------------------------
Key: WW-2684
URL: https://issues.apache.org/struts/browse/WW-2684
Project: Struts 2
Issue Type: Bug
Components: Core Interceptors
Affects Versions: 2.1.2
Environment: Sun Java System Application Server 9.1 Update 2
Windows XP
Reporter: Reg Whitton
Hi,
I was trying out the REST plugin by modifing a copy of the tutorial code from
the wiki (http://struts.apache.org/2.x/docs/ready-set-go.html). However, if I
upgrade to Struts 2.1.2 to include the plugin I get the above execption when I
deploy onto Glassfish.
Steps to recreate:
==============
# mvn archetype:create -DgroupId=tutorial \
-DartifactId=tutorial \
-DarchetypeGroupId=org.apache.struts \
-DarchetypeArtifactId=struts2-archetype-starter \
-DarchetypeVersion=2.0.9-SNAPSHOT \
-DremoteRepositories=http://people.apache.org/repo/m2-snapshot-repository
# cd tutorial
# mvn install
# cp target/tutorial.war <glassfish-install-dir>/domains/domain1/autodeploy/
browse to http://localhost:8080/tutorial/index.action - it has deployed without
errors and works.
edit the pom.xml and change the struts2 version from 2.0.9 to 2.1.2
edit src/main/java/tutorial/DateConverter.java to fix change to package:
< import com.opensymphony.xwork2.util.TypeConversionException;
> import com.opensymphony.xwork2.conversion.TypeConversionException;
# mvn clean install
# cp target/tutorial.war <glassfish-install-dir>/domains/domain1/autodeploy/
This time it deploys but with the following errors in the log and application
fails to function.
The bit "URI is not hierarchical" from within java.io.File seems to indicate
that the is an attempt to read a file from a jar or zip using a File object
rather than a stream.
Thanks,
Reg
Errors from log:
============
[#|2008-06-18T16:04:53.411+0100|SEVERE|sun-appserver9.1|com.opensymphony.xwork2.config.providers.InterceptorBuilder|_ThreadID=14;_ThreadName=Timer-8;_RequestID=2c3eca49-fa0b-4d7d-9697-41a3b6a0dbb2;|Actual
exception
Caught Exception while registering Interceptor class
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor -
interceptor -
jar:file:/C:/Program%20Files/Java/javaee5_05/domains/domain1/applications/j2ee-modules/tutorial/WEB-INF/lib/struts2-core-2.1.2.jar!/struts-default.xml:143:127
at
com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:200)
at
com.opensymphony.xwork2.config.providers.InterceptorBuilder.constructInterceptorReference(InterceptorBuilder.java:53)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.lookupInterceptorReference(XmlConfigurationProvider.java:1081)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadInterceptorStack(XmlConfigurationProvider.java:781)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadInterceptorStacks(XmlConfigurationProvider.java:794)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadInterceptors(XmlConfigurationProvider.java:817)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:446)
at
com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:270)
at
org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:110)
at
com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:179)
at
com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
at
org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:371)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:424)
at
org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:213)
at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:257)
at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:369)
at
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4389)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:5189)
at com.sun.enterprise.web.WebModule.start(WebModule.java:326)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:973)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:957)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1584)
at
com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1222)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:182)
at
com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:278)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:974)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:961)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:464)
at
com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
at
com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:308)
at
com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:226)
at
com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:298)
at
com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(ApplicationStartPhase.java:132)
at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:276)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:294)
at
com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:555)
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
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
at
com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
at
com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
at $Proxy1.invoke(Unknown Source)
at
com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
at
com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
at
com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeploymentService(AutoDeployer.java:564)
at
com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployJavaEEArchive(AutoDeployer.java:545)
at
com.sun.enterprise.deployment.autodeploy.AutoDeployer.deploy(AutoDeployer.java:492)
at
com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:267)
at
com.sun.enterprise.deployment.autodeploy.AutoDeployControllerImpl$AutoDeployTask.run(AutoDeployControllerImpl.java:374)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:290)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:470)
at
com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:508)
at
com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:507)
at
com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:558)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:506)
at
com.opensymphony.xwork2.ObjectFactory.injectInternalBeans(ObjectFactory.java:125)
at
com.opensymphony.xwork2.spring.SpringObjectFactory.autoWireBean(SpringObjectFactory.java:174)
at
com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:154)
at
com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:128)
at
com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:137)
at
com.opensymphony.xwork2.ObjectFactory.buildInterceptor(ObjectFactory.java:178)
... 64 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:137)
at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
at
com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:447)
at
com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:462)
at
com.opensymphony.xwork2.inject.ContainerImpl.access$000(ContainerImpl.java:48)
at
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:288)
... 75 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:480)
at
com.opensymphony.xwork2.inject.ContainerImpl$7.call(ContainerImpl.java:517)
at
com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:565)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:515)
at
com.opensymphony.xwork2.config.impl.LocatableFactory.create(LocatableFactory.java:32)
at
com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:135)
... 80 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:290)
at
com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:416)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:477)
... 85 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:137)
at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:49)
at
com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:447)
at
com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:462)
at
com.opensymphony.xwork2.inject.ContainerImpl.access$000(ContainerImpl.java:48)
at
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:288)
... 87 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException:
java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:480)
at
com.opensymphony.xwork2.inject.ContainerImpl$7.call(ContainerImpl.java:517)
at
com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:565)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:515)
at
com.opensymphony.xwork2.config.impl.LocatableFactory.create(LocatableFactory.java:32)
at
com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:135)
... 92 more
Caused by: java.lang.RuntimeException:
java.lang.reflect.InvocationTargetException
at
com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:425)
at
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:477)
... 97 more
Caused by: java.lang.reflect.InvocationTargetException
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
com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:404)
... 98 more
Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
at java.io.File.<init>(File.java:335)
at
com.opensymphony.xwork2.validator.DefaultValidatorFactory.parseValidators(DefaultValidatorFactory.java:101)
at
com.opensymphony.xwork2.validator.DefaultValidatorFactory.<init>(DefaultValidatorFactory.java:43)
... 103 more
|#]
[#|2008-06-18T16:04:53.427+0100|WARNING|sun-appserver9.1|com.opensymphony.xwork2.config.providers.InterceptorBuilder|_ThreadID=14;_ThreadName=Timer-8;_RequestID=2c3eca49-fa0b-4d7d-9697-41a3b6a0dbb2;|Unable
to load config class
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor at
interceptor -
jar:file:/C:/Program%20Files/Java/javaee5_05/domains/domain1/applications/j2ee-modules/tutorial/WEB-INF/lib/struts2-core-2.1.2.jar!/struts-default.xml:143:127
probably due to a missing jar, which might be fine if you never plan to use
the validation interceptor|#]
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.