[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16303878#comment-16303878 ] Ananga Mohan Bera commented on WW-4868: --- Reopening the issue for deleting some comments and code. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > Attachments: s1.png, s2.png, s3.png, s4.png > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16200698#comment-16200698 ] Aleksandr Mashchenko commented on WW-4868: -- [~anbera] Stop reopening this issue. That kind of questions belong to user mailing list - http://struts.apache.org/mail.html. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > Attachments: s1.png, s2.png, s3.png, s4.png > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16200429#comment-16200429 ] Ananga Mohan Bera commented on WW-4868: --- Hi Lukasz, jsp pages are properly forwarded. I am attaching the screenshot of my local debug. Problem is happening while creating the instance of TextProviderFactory. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16200219#comment-16200219 ] Lukasz Lenart commented on WW-4868: --- It isn't a problem with accessing the login action, but somehow your request reaches {{loginapimessages.jsp}} first - this what the stacktrace shows. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16200014#comment-16200014 ] Lukasz Lenart commented on WW-4868: --- If it doesn't work, please remove the listener. The only option I see is to use an action to access that JSP instead of calling the JSP directly. You are simply accessing the page out of a Struts context so you cannot expect that the Struts will work properly in such case. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=1629#comment-1629 ] Yasser Zamani commented on WW-4868: --- No, listener or filter does not matter. jsp should be result of your action in struts.xml and you should browse http://yourserver:yourport/thatAction instead of http://yourserver:yourport/thatJsp.jsp. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16199886#comment-16199886 ] Lukasz Lenart commented on WW-4868: --- As I said, you are accessing the JSP out of a Struts action and that's why the {{ActionContext}} is null. And as I said it early you are using some parts of the Struts API in a way it wasn't designed to work. You can try to configure [StrutsListener|https://struts.apache.org/maven/struts2-core/apidocs/org/apache/struts2/dispatcher/listener/StrutsListener.html] in your {{web.xml}} > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16199868#comment-16199868 ] Lukasz Lenart commented on WW-4868: --- And instead of migrating to 2.5.14 you can migrate to 2.3.34 as it contains exactly the same security related fixes. And in meantime you can re-think your design of the application and those custom tags. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16199864#comment-16199864 ] Lukasz Lenart commented on WW-4868: --- As you can notice there is no action call in the stacktrace so you are accessing that JSP out of Struts action which means {{ActionContext}} is null. What do you have at this line {{MCBaseTag.java:1267}}? > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16199847#comment-16199847 ] Ananga Mohan Bera commented on WW-4868: --- Hi Lukasz, We have created the TextProviderFactory and TextProvider instance as mentioned and now We are getting java.lang.NullPointerException: null while login to the Application. Placing the entire log: 2017-10-10|19:55:46,513|ERROR||[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210||Validation exception | java.lang.NullPointerException: null at com.tcs.mastercraft.taglib.MCBaseTag.(MCBaseTag.java:1267) ~[coreweb.jar:?] at com.tcs.bfsarch.tags.eh.bfsMessagesTag.(bfsMessagesTag.java:54) ~[coreweb.jar:?] at jsp_servlet._common.__loginapimessages._jsp__tag0(__loginapimessages.java:131) ~[__loginapimessages.class:?] at jsp_servlet._common.__loginapimessages._jspService(__loginapimessages.java:96) ~[__loginapimessages.class:?] at weblogic.servlet.jsp.JspBase.service(JspBase.java:35) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) ~[weblogic.server.merged.jar:12.1.3.0.0] at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) ~[weblogic.server.merged.jar:12.1.3.0.0] at org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) ~[coreweb.jar:?] at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108) ~[spring-web-4.0.2.RELEASE.jar:4.0.2.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196850#comment-16196850 ] Lukasz Lenart commented on WW-4868: --- First of all this is a really bad design, these interfaces ({{TextProvider}}, {{LocaleProvider}}, {{Validateable}}, {{ValidationAware}}) were designed to be used only with actions not with custom out-of-Struts-DI classes like your tags. You can use {{ActionContext}} to obtain an instance of {{TextProviderFactory}}: {code:java} TextProviderFactory textProviderFactory = ActionContext.getContext().getInstance(TextProviderFactory.class); TextProvider textProvider = textProviderFactory.createInstance(getClass()); {code} but please be aware that the {{ActionContext}} is only available when accessing actions, if you are accessing your JSPs directly it can be unavailable. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196784#comment-16196784 ] Ananga Mohan Bera commented on WW-4868: --- We are accessing those JSPs via an action. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196654#comment-16196654 ] Lukasz Lenart commented on WW-4868: --- I was asking how do you access those JSPs? Directly or via an action? > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196640#comment-16196640 ] Ananga Mohan Bera commented on WW-4868: --- All Custom Tag Libraries are called from JSP : public int doStartTag() throws JspException private void processMessage(MCActionMessage report) throws JspException public int doEndTag() throws JspException > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16196613#comment-16196613 ] Ananga Mohan Bera commented on WW-4868: --- Hi We are having different struts.xml(as example struts-archgui.xml and all struts-x.xml are included from struts.xml. We are having form action with jsp files as example: We are having action mapping from struts-archgui.xml as example: ar_w_qbe_FunctionSearch /ARCHGUI/ar_w_qbe_FunctionSearch.jsp /ARCHGUI/ar_ct_qbe_FunctionList_Table.jsp Our MCAction class is having execute() as : public String execute() throws Exception{ populate(form,null,null,request); String result= executeMCAction(form,request,response); MCAJAXProcessorAction.validateCSRFPerRequest(request, response); return result; } executeMCAction() method is having such method as ex opening Window method as: private String processOpenWindow( HttpServletRequest req,HttpSession session, MCActionForm form,String lWinName, int lgbinst,String winObjKey,String parentTabId) >From processOpenWindow() We are forwarding to jsp page as return forwardToJsp (lgbinst,lWinName+"JSP", req); MCAJAXProcessorAction is also having same Implementation as MCAction for executing any Service through AJAX. We are having many Custom Tag Libraries where We are having TextProviderFactory and TextProvider and the implementation of TextProviderFactory and TextProvider have been specified earlier. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194802#comment-16194802 ] Lukasz Lenart commented on WW-4868: --- Hard to say how to solve this ... do you use those tags inside JSP files used inside actions? Or do you access them directly? via action I meant accessing urls like {{/my-action.action}} or {/my-action.do}} wherear directly means {{/my-page.jsp}} > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194660#comment-16194660 ] Ananga Mohan Bera commented on WW-4868: --- Hi The example app does not open. We are having many Custom Tag classes like the example below where We are utilizing TextProvider and TextProviderFactory. public abstract class MCBaseTag extends BodyTagSupport implements TagLibUtil, TextProvider, LocaleProvider,Validateable,ValidationAware{ /** * */ private static final long serialVersionUID = 1L; /** * Commons Logging instance */ public static final Logger log = LoggerFactory.getLogger("BancsOnline."+MCBaseTag.class.getName()); // - Instance Variables /** * The default Locale for our server. */ protected static final Locale defaultLocale = Locale.getDefault(); /** * The message resources for this package. */ /* protected static final MessageResources messages = MessageResources.getMessageResources(Constants.Package + ".LocalStrings");*/ //MasterCraft Attributes /** * The message resources for MasterCraft Messages */ /*protected static final MessageResources MCMessages = MessageResources.getMessageResources("com.tcs.mastercraft.taglib.ErrorMessages"); */ private String technology="html4"; public TagLibUtil tagLibUtil; public String property = null; protected String dir = "ltr"; public String lang = null; public String xml_lang = null; public String value = null; protected String name = Constants.BEAN_KEY ; protected boolean isNetScape = false; protected String dataRole=null; protected String dataType=null; public MCBaseTag(){ } public String getDataRole(){ return dataRole; } public static TagLibUtil getTagLibNewInstance(MCBaseTag wrapperObeject, PageContext pageContextObj){ return TechnologyFactory.getTagLibInstance(wrapperObeject,pageContextObj); } public void setDataRole(String dataRole ){ //System.out.println("dataRole:"+dataRole); this.dataRole=dataRole; } public String getDataType(){ return dataType; } public void setDataType(String dataType ){ //System.out.println("dataType:"+dataType); this.dataType=dataType; } protected McFieldPropMap map = null; public McFieldPropMap getMap() { return map; } public void setMap(McFieldPropMap map) { this.map = map; } protected gu_base controlObject = null; public gu_base getControlObject() { return controlObject; } public void setControlObject(gu_base controlObject) { this.controlObject = controlObject; } public WinBase getWindowObject() { return windowObject; } public void setWindowObject(WinBase windowObject) { this.windowObject = windowObject; } protected WinBase windowObject = null; // Navigation Management /** Access key character. */ public String accesskey = null; /** Tab index value. */ protected String tabindex = null; // Indexing ability for Iterate /** Whether the control is output in javascript or not * */ protected boolean script = false; // Mouse Events /** Mouse click event. */ protected String onclick = null; /** Mouse double click event. */ protected String ondblclick = null; /** Mouse over component event. */ protected String onmouseover = null; /** Mouse exit component event. */ protected String onmouseout = null; /** Mouse moved over component event. */ protected String onmousemove = null; /** Mouse pressed on component event. */ protected String onmousedown = null; /** Mouse released on component event. */ protected String onmouseup = null; // Keyboard Events /** Key down in component event. */ protected String onkeydown = null; //Added by piyush for keyboard support //Starts protected String tabsIndex; public String getTabsIndex() { //System.out.println("tabsIndex"+tabsIndex); return tabsIndex; } public void setTabsIndex(String tabsIndex) { //System.out.println("tabsIndex"+tabsIndex); this.tabsIndex = tabsIndex; } //Ends /** Key released in component event. */ protected String onkeyup = null; /** Key down and up together in component event. */ protected String onkeypress = null; // Text Events /** Text selected in component event. */ protected String onselect = null; /** Content changed after component lost focus event. */ protected String onchange = null; // Focus Events and States /** Component lost focus event. */ protected String onblur = null;
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194634#comment-16194634 ] Lukasz Lenart commented on WW-4868: --- That's why this is 2.5.x where breaking changes were introduced. I don't see any custom tag, you have basically re-implemented {{ActionSupport}} and you're trying create instance of the {{TextProvider}} interface. You can achieve exactly the same thing by implementing a custom [TextProviderFactory|http://struts.apache.org/core-developers/localization.html#custom-textprovider-and-textproviderfactory] - see the example app as well. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194554#comment-16194554 ] Ananga Mohan Bera commented on WW-4868: --- With xwork-core only TextProvider was interface and TextProviderFactory was class, So changing Class to Interface and changing signature of createInstance method of TextProviderFactory will have effect on old Struts 2.3.x code We are having many Custom Tags where We are utilizing TextProvider and TextProviderFactory . > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.5.12, 2.5.13 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: > |Validation exception | > javax.servlet.ServletException: java.lang.InstantiationError: > com.opensymphony.xwork2.TextProviderFactory > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:387) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:483) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:372) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:481) > ~[weblogic.server.merged.jar:12.1.3.0.0] > at > org.springframework.security.web.firewall.RequestWrapper$FirewalledRequestAwareRequestDispatcher.include(RequestWrapper.java:136) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > com.tcs.bfsarch.security.action.AuthSuccessHandler.onAuthenticationSuccess(AuthSuccessHandler.java:211) > ~[coreweb.jar:?] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:331) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.successfulAuthentication(AbstractAuthenticationProcessingFilter.java:298) > ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE] > at >
[jira] [Commented] (WW-4868) createInstance method signature change of TextProviderFactory from merged xwork-core code inside struts2-core-2.5.13.jar which was present with xwork-core jar
[ https://issues.apache.org/jira/browse/WW-4868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16194503#comment-16194503 ] Ananga Mohan Bera commented on WW-4868: --- Hi Our problem is something different. As TextProviderFactory was a class with xwork-core, So We have created all Our Custom Tag with such implementation. private final transient TextProvider textProvider = new TextProviderFactory().createInstance(getClass(), this); public String getText(String aTextName) { return textProvider.getText(aTextName); } public String getText(String aTextName, String defaultValue) { return textProvider.getText(aTextName, defaultValue); } public String getText(String aTextName, String defaultValue, String obj) { return textProvider.getText(aTextName, defaultValue, obj); } public String getText(String aTextName, List args) { return textProvider.getText(aTextName, args); } public String getText(String key, String[] args) { return textProvider.getText(key, args); } public String getText(String aTextName, String defaultValue, List args) { return textProvider.getText(aTextName, defaultValue, args); } public String getText(String key, String defaultValue, String[] args) { return textProvider.getText(key, defaultValue, args); } public String getText(String key, String defaultValue, List args, ValueStack stack) { return textProvider.getText(key, defaultValue, args, stack); } public String getText(String key, String defaultValue, String[] args, ValueStack stack) { return textProvider.getText(key, defaultValue, args, stack); } @Override public ResourceBundle getTexts() { return textProvider.getTexts(); } public Locale getLocale() { ActionContext ctx = ActionContext.getContext(); if (ctx != null) { return ctx.getLocale(); } return Locale.getDefault(); } @Override public boolean hasKey(String arg0) { return false; } @Override public ResourceBundle getTexts(String arg0) { return textProvider.getTexts(); } } So how We will override the methods of TextProvider. > createInstance method signature change of TextProviderFactory from merged > xwork-core code inside struts2-core-2.5.13.jar which was present with > xwork-core jar > > > Key: WW-4868 > URL: https://issues.apache.org/jira/browse/WW-4868 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 2.3.32 >Reporter: Ananga Mohan Bera >Assignee: Lukasz Lenart >Priority: Critical > Fix For: 2.5.14 > > > xwork-core-2.3.32 had these createInstance methods. > {code:java} > public TextProvider createInstance(Class clazz, LocaleProvider provider) { > TextProvider instance = getTextProvider(clazz, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setClazz(clazz); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > public TextProvider createInstance(ResourceBundle bundle, LocaleProvider > provider) { > TextProvider instance = getTextProvider(bundle, provider); > if (instance instanceof ResourceBundleTextProvider) { > ((ResourceBundleTextProvider)instance).setBundle(bundle); > ((ResourceBundleTextProvider)instance).setLocaleProvider(provider); > } > return instance; > } > {code} > struts2-core-2.5.13.jar has merged the xwork-core code and there only these > methods are available: > {code:java} > public abstract TextProvider createInstance(Class paramClass); > public abstract TextProvider createInstance(ResourceBundle > paramResourceBundle); > {code} > As We have called the createInstance method from many places of Our > Application, So migration to struts-2.5.13 is creating a problem. We are > having code like: > {code:java} > private final transient TextProvider textProvider = new > TextProviderFactory().createInstance(getClass(), this); > {code} > method signature should not be changed which has huge effect rather there > should be overloaded method with merged xwork-core code inside > struts2-core-2.5.13.jar. > We are getting such error: > {noformat} > 2017-10-06|16:53:23,965|ERROR||[ACTIVE] ExecuteThread: '0' for queue: > 'weblogic.kernel.Default > (self-tuning)'|com.tcs.bancs.filter.BancsServletFilter:210|:G:dl3xbKkVBfwQOly9zGyiU1g_MDVUFEoaUV5nTc3nKJP-btoWLMoK!183988368!1507288983829:0:0:0:0:0:0:0:1: >