struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave Newton <davelnew...@gmail.com>
Subject Re: NullPointerException - com.opensymphony.xwork2.util.FileManager$FileRevision.needsReloading(FileManager.java:209) of "Apache Struts 2 Web Application Development" book
Date Sun, 12 Nov 2017 15:53:12 GMT
Please create a GitHub repo with your code and I'll take a look. Note that
the examples from the book were tested only on Tomcat, and a pretty long
time ago. I'll need any server details you're using.

Also note that S2 is fairly different now than when the book was written.

On Sun, Nov 12, 2017 at 8:26 AM albert kao <albertkao3@gmail.com> wrote:

> struts2 version: 2.1.6
>
> On Sat, Nov 11, 2017 at 9:47 PM, Dave Newton <davelnewton@gmail.com>
> wrote:
>
> > What version of Struts 2 are you attempting to use?
> >
> > On Sat, Nov 11, 2017 at 5:58 PM albert kao <albertkao3@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: davelnewton@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>
> >
>
-- 
e: davelnewton@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>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message