struts2 version: 2.1.6 On Sat, Nov 11, 2017 at 9:47 PM, Dave Newton <davelnew...@gmail.com> wrote:
> What version of Struts 2 are you attempting to use? > > On Sat, Nov 11, 2017 at 5:58 PM albert kao <albertk...@gmail.com> wrote: > > > I downloaded the source code of the book "Apache Struts 2 Web Application > > Development" by Dave Newton from the > > https://www.packtpub.com/books/content/support. > > > > Chapter 2 had compile error with Apache Maven 3.5.0. > > $ mvn -version > > Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; > > 2017-04-03T15:39:06-04:00) > > Maven home: /home/alkao/maven/apache-maven-3.5.0 > > Java version: 1.8.0_144, vendor: Oracle Corporation > > Java home: /home/alkao/jdk/jdk1.8.0_144/jre > > Default locale: en_CA, platform encoding: UTF-8 > > OS name: "linux", version: "4.4.0-21-generic", arch: "i386", family: > "unix" > > > > To fix it, I removed just the <scope> tag in pom.xml. > > Then run mvn: > > $ cd > > /home/alkao/Struts2/Apache_Struts_2_Web_Application_ > Development/ch02/sanity > > $ mvn clean package > > > > Running wildfly-10.1.0.Final: > > $ JBOSS_HOME/bin/standalone.sh > > $ jboss-cli.sh --connect --command="deploy > > > > /home/alkao/Struts2/Apache_Struts_2_Web_Application_ > Development/ch02/sanity/target/ch02-sanity-1.0.war > > --force" > > > > Running these 3 http links resulted in the same error in the web browser > > below. > > Please help. Thanks. > > http://localhost:8080/ch02-sanity-1.0/index.html > > http://localhost:8080/ch02-sanity-1.0/sanity.jsp > > http://localhost:8080/ch02-sanity-1.0/sanity.action > > > > > > > > > > Error processing request > > Context Path: > > /ch02-convention-1.0 > > > > Servlet Path: > > /index.html > > > > Path Info: > > null > > > > Query String: > > null > > > > Stack Trace > > java.lang.NullPointerException > > > > com.opensymphony.xwork2.util.FileManager$FileRevision. > needsReloading(FileManager.java:209) > > > > com.opensymphony.xwork2.util.FileManager.fileNeedsReloading( > FileManager.java:60) > > > > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider. > needsReload(XmlConfigurationProvider.java:325) > > > > org.apache.struts2.config.StrutsXmlConfigurationProvider.needsReload( > StrutsXmlConfigurationProvider.java:168) > > > > com.opensymphony.xwork2.config.ConfigurationManager.conditionalReload( > ConfigurationManager.java:220) > > > > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration( > ConfigurationManager.java:61) > > org.apache.struts2.dispatcher.Dispatcher.getContainer( > Dispatcher.java:774) > > > > org.apache.struts2.dispatcher.ng.InitOperations.initStaticContentLoader( > InitOperations.java:77) > > > > org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter. > init(StrutsPrepareAndExecuteFilter.java:49) > > > > io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed( > LifecyleInterceptorInvocation.java:111) > > > > org.wildfly.extension.undertow.security.RunAsLifecycleInterceptor.init( > RunAsLifecycleInterceptor.java:84) > > > > io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed( > LifecyleInterceptorInvocation.java:97) > > io.undertow.servlet.core.ManagedFilter.createFilter( > ManagedFilter.java:80) > > io.undertow.servlet.core.ManagedFilter.getFilter(ManagedFilter.java:66) > > io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) > > > > io.undertow.servlet.handlers.FilterHandler$FilterChainImpl. > doFilter(FilterHandler.java:131) > > > > io.undertow.servlet.handlers.FilterHandler.handleRequest( > FilterHandler.java:84) > > > > io.undertow.servlet.handlers.security.ServletSecurityRoleHandler. > handleRequest(ServletSecurityRoleHandler.java:62) > > > > io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest( > ServletDispatchingHandler.java:36) > > > > org.wildfly.extension.undertow.security.SecurityContextAssociationHand > ler.handleRequest(SecurityContextAssociationHandler.java:78) > > > > io.undertow.server.handlers.PredicateHandler.handleRequest( > PredicateHandler.java:43) > > > > io.undertow.servlet.handlers.security.SSLInformationAssociationHandl > er.handleRequest(SSLInformationAssociationHandler.java:131) > > > > io.undertow.servlet.handlers.security.ServletAuthenticationCallHandl > er.handleRequest(ServletAuthenticationCallHandler.java:57) > > > > io.undertow.server.handlers.PredicateHandler.handleRequest( > PredicateHandler.java:43) > > > > io.undertow.security.handlers.AbstractConfidentialityHandler > .handleRequest(AbstractConfidentialityHandler.java:46) > > > > io.undertow.servlet.handlers.security.ServletConfidentialityConstrai > ntHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) > > > > io.undertow.security.handlers.AuthenticationMechanismsHandle > r.handleRequest(AuthenticationMechanismsHandler.java:60) > > > > io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHand > ler.handleRequest(CachedAuthenticatedSessionHandler.java:77) > > > > io.undertow.security.handlers.NotificationReceiverHandler.handleRequest( > NotificationReceiverHandler.java:50) > > > > io.undertow.security.handlers.AbstractSecurityContextAssocia > tionHandler.handleRequest(AbstractSecurityContextAssocia > tionHandler.java:43) > > > > io.undertow.server.handlers.PredicateHandler.handleRequest( > PredicateHandler.java:43) > > > > org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler. > handleRequest(JACCContextIdHandler.java:61) > > > > io.undertow.server.handlers.PredicateHandler.handleRequest( > PredicateHandler.java:43) > > > > io.undertow.server.handlers.PredicateHandler.handleRequest( > PredicateHandler.java:43) > > > > io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest( > ServletInitialHandler.java:292) > > > > io.undertow.servlet.handlers.ServletInitialHandler.access$ > 100(ServletInitialHandler.java:81) > > > > io.undertow.servlet.handlers.ServletInitialHandler$2.call( > ServletInitialHandler.java:138) > > > > io.undertow.servlet.handlers.ServletInitialHandler$2.call( > ServletInitialHandler.java:135) > > > > io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call( > ServletRequestContextThreadSetupAction.java:48) > > > > io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call( > ContextClassLoaderSetupAction.java:43) > > > > io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call( > LegacyThreadSetupActionWrapper.java:44) > > > > io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call( > LegacyThreadSetupActionWrapper.java:44) > > > > io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call( > LegacyThreadSetupActionWrapper.java:44) > > > > io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call( > LegacyThreadSetupActionWrapper.java:44) > > > > io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call( > LegacyThreadSetupActionWrapper.java:44) > > > > io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest( > ServletInitialHandler.java:272) > > > > io.undertow.servlet.handlers.ServletInitialHandler.access$ > 000(ServletInitialHandler.java:81) > > > > io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest( > ServletInitialHandler.java:104) > > io.undertow.server.Connectors.executeRootHandler(Connectors.java:202) > > io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:805) > > > > java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1149) > > > > java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:624) > > java.lang.Thread.run(Thread.java:748) > > > -- > e: davelnew...@gmail.com > m: 908-380-8699 > s: davelnewton_skype > t: @dave_newton <https://twitter.com/dave_newton> > b: Bucky Bits <http://buckybits.blogspot.com/> > g: davelnewton <https://github.com/davelnewton> > so: Dave Newton <http://stackoverflow.com/users/438992/dave-newton> >