RE: [struts-user] XML based configuration

2019-01-30 Thread Jason Pyeron
> -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

2019-01-30 Thread Jason Pyeron



> -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 

XML based configuration

2019-01-30 Thread Jason Pyeron
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

2019-01-30 Thread Lukasz Lenart
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