RE: [struts-user] XML based configuration
> -Original Message- > From: Jason Pyeron > Sent: Wednesday, January 30, 2019 9:53 PM > > -Original Message- > > From: Jason Pyeron > > Sent: Wednesday, January 30, 2019 9:11 PM > > > > It has been 10+ years since I used the XML configuration, so please bear > > with me. > > > > I am attempting to deploy Apache Roller under a sub context > > (public#roller.war) so the url would be > > http://127.0.0.1:8080/public/roller/roller-ui/login.rol . > > > > When I do so, I get an exception cannot find definition named .Login > > So I think I have narrowed it down. file:/C:/programs.x64/apache-software-foundation/apache-tomcat-7.0.82/webapps/public#roller/WEB-INF/tiles.xml But when this URL is stored in the org.apache.tiles.request.ApplicationResource, specifically org.apache.struts2.tiles.StrutsApplicationResource it is splitting the URL in two: pathPrefix="/C:/programs.x64/apache-software-foundation/apache-tomcat-7.0" and suffix=".82/webapps/public" If I hack it with the debugger to : pathPrefix="/C:/programs.x64/apache-software-foundation/apache-tomcat-7.0.82/webapps/public#roller/WEB-INF/tiles.xml" and suffix="" It works until the next restart! - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
RE: [struts-user] XML based configuration
> -Original Message- > From: Jason Pyeron > Sent: Wednesday, January 30, 2019 9:11 PM > To: 'Struts Users Mailing List' > Subject: [struts-user] XML based configuration > > It has been 10+ years since I used the XML configuration, so please bear > with me. > > I am attempting to deploy Apache Roller under a sub context > (public#roller.war) so the url would be > http://127.0.0.1:8080/public/roller/roller-ui/login.rol . > > When I do so, I get an exception cannot find definition named .Login > > > extends="struts-default"> > class="org.apache.roller.weblogger.ui.struts2.core.Login"> > .Login > > > > 18:58:52.383 [http-bio-8092-exec-3] WARN > org.apache.struts2.views.tiles.TilesResult - could not find @TilesDefinition > for action: login > org.apache.tiles.definition.NoSuchDefinitionException: Cannot find > definition named '.Login' > at > org.apache.tiles.impl.mgmt.CachingTilesContainer.render(CachingTilesContaine > r.java:123) > at > org.apache.struts2.views.tiles.TilesResult.doExecute(TilesResult.java:161) > at > org.apache.struts2.result.StrutsResultSupport.execute(StrutsResultSupport.ja > va:208) Tracking this down further, it seems it could be related to https://issues.apache.org/jira/browse/WW-4624 . It seems that tiles.xml is not found once I change the context path to have a / in it. I tested by making the tiles.xml contain invalid XML content, and no errors were found. Once I moved the context path back to /roller/ from /public/roller/ it found the XML errors. 21:36:30.902 [http-bio-8092-exec-1] WARN org.apache.struts2.views.tiles.TilesResult - got TilesException while checking if definiton exists, ignoring it org.apache.tiles.definition.DefinitionsFactoryException: XML error reading definitions. at org.apache.tiles.definition.digester.DigesterDefinitionsReader.read(DigesterDefinitionsReader.java:328) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.BaseLocaleUrlDefinitionDAO.loadDefinitionsFromResource(BaseLocaleUrlDefinitionDAO.java:150) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:239) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:230) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:230) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:208) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitions(CachingLocaleUrlDefinitionDAO.java:197) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitions(ResolvingLocaleUrlDefinitionDAO.java:68) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.checkAndloadDefinitions(CachingLocaleUrlDefinitionDAO.java:179) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinitions(CachingLocaleUrlDefinitionDAO.java:131) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:105) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:49) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.definition.UnresolvingLocaleDefinitionsFactory.getDefinition(UnresolvingLocaleDefinitionsFactory.java:89) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.impl.BasicTilesContainer.getDefinition(BasicTilesContainer.java:286) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.impl.BasicTilesContainer.isValidDefinition(BasicTilesContainer.java:273) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.tiles.TilesContainerWrapper.isValidDefinition(TilesContainerWrapper.java:88) ~[tiles-api-3.0.7.jar:3.0.7] at org.apache.tiles.impl.mgmt.CachingTilesContainer.isValidDefinition(CachingTilesContainer.java:100) ~[tiles-core-3.0.7.jar:3.0.7] at org.apache.struts2.views.tiles.TilesResult.doExecute(TilesResult.java:136) [struts2-tiles-plugin-2.5.17.jar:2.5.17] at org.apache.struts2.result.StrutsResultSupport.execute(StrutsResultSupport.java:206) [struts2-core-2.5.17.jar:2.5.17] at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:375) [struts2-core-2.5.17.jar:2.5.17] ... Caused by: org.xml.sax.SAXParseException: The entity name must i
XML based configuration
It has been 10+ years since I used the XML configuration, so please bear with me. I am attempting to deploy Apache Roller under a sub context (public#roller.war) so the url would be http://127.0.0.1:8080/public/roller/roller-ui/login.rol . When I do so, I get an exception cannot find definition named .Login .Login 18:58:52.383 [http-bio-8092-exec-3] WARN org.apache.struts2.views.tiles.TilesResult - could not find @TilesDefinition for action: login org.apache.tiles.definition.NoSuchDefinitionException: Cannot find definition named '.Login' at org.apache.tiles.impl.mgmt.CachingTilesContainer.render(CachingTilesContaine r.java:123) at org.apache.struts2.views.tiles.TilesResult.doExecute(TilesResult.java:161) at org.apache.struts2.result.StrutsResultSupport.execute(StrutsResultSupport.ja va:208) at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionI nvocation.java:373) at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati on.java:277) at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(D efaultWorkflowInterceptor.java:176) at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method FilterInterceptor.java:98) at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati on.java:247) at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(Validati onInterceptor.java:260) at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.do Intercept(AnnotationValidationInterceptor.java:52) at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method FilterInterceptor.java:98) at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati on.java:247) at org.apache.roller.weblogger.ui.struts2.util.UIActionPrepareInterceptor.doInt ercept(UIActionPrepareInterceptor.java:54) Of course moving the context back to /roller from /public/roller fixes the issue. Any ideas where to start? $ git log -1 commit d456d54200e7c747ef0312ca190c2a15433b6b3d (HEAD -> master, origin/master, origin/HEAD) Author: Dave Johnson Date: Fri Jan 18 17:36:28 2019 -0500 From Kohei's PR $ git remote -v origin https://github.com/apache/roller.git (fetch) - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org
Re: EmptyStackException after upgrading Struts 2.3 to 2.5
wt., 29 sty 2019 o 12:04 Yasser Zamani napisał(a): > Yes I recently learnt it but I always logically had this assumption: When > bean A needs bean B to be injected and B's type is `prototype`, then Struts > internal injection cycle always re-inject a new instance of B into A > regardless if A's type is `singleton` or `prototype`. So I missed this case > :( and Ach, you're right, I now can retain my high concurrent test was on > JSONResult not JSONInterceptor :( That would be true if interceptors were re-created on every request. I think each DI works in the same way - you won't get a new instance injections if the parent is a singleton Regards -- Łukasz + 48 606 323 122 http://www.lenart.org.pl/ - To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org