[ https://issues.apache.org/jira/browse/WW-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13752232#comment-13752232 ]
Lukasz Lenart commented on WW-3689: ----------------------------------- Yes, it was already reported, see WW-4152 > NullPointerException coming from Settings / > LegacyPropertiesConfigurationProvider (thread-safety issue?) > -------------------------------------------------------------------------------------------------------- > > Key: WW-3689 > URL: https://issues.apache.org/jira/browse/WW-3689 > Project: Struts 2 > Issue Type: Bug > Affects Versions: 2.0.14, 2.2.3.1 > Environment: Any; multi-core machines tend to demonstrate the problem > more readily though. > Reporter: James Abley > Assignee: Lukasz Lenart > Fix For: 2.3.15 > > Attachments: WW-3689-locked-initialisation.patch > > > When running a load test, we intermittently see failures with this stack > trace (the line numbers are for 2.0.14, but we also see this with 2.2.3.1): > {noformat} > Exception in thread "MultiThreadTestRunner-5" java.lang.NullPointerException > at org.apache.struts2.config.Settings.get(Settings.java:175) > at > org.apache.struts2.config.Settings.getDefaultInstance(Settings.java:293) > at org.apache.struts2.config.Settings.getInstance(Settings.java:109) > at > org.apache.struts2.config.LegacyPropertiesConfigurationProvider.register(LegacyPropertiesConfigurationProvider.java:67) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205) > at > com.example.platform.test.servlet.OurServlet.handleRequest(OurServlet.java:64) > {noformat} > or > {noformat} > Caused by: java.lang.NullPointerException > at > org.apache.struts2.config.LegacyPropertiesConfigurationProvider.loadSettings(LegacyPropertiesConfigurationProvider.java:86) > at > org.apache.struts2.config.LegacyPropertiesConfigurationProvider.register(LegacyPropertiesConfigurationProvider.java:69) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205) > {noformat} > Our suspicion is that the initialisation isn't thread-safe; we've not seen > this failure on older, single-processor / single-core machines. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira