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.

Reply via email to