You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by Lukasz Lenart <lu...@apache.org> on 2022/08/25 05:52:06 UTC
[TEST] Struts 6.0.2 test build is ready
Hello,
This is the first patch version of Struts 6.x series. Please take the
time and test the bits - any help is appreciated. Please report any
problems you will spot.
Here are the changes from the previous 6.0.0 version:
https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
Staging Maven repo
https://repository.apache.org/content/groups/staging/
Standalone artifacts
https://dist.apache.org/repos/dist/dev/struts/6.0.2/
Release notes
https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
Kind regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
czw., 25 sie 2022 o 14:09 Johannes Geppert <jo...@apache.org> napisał(a):
>
> Hi Lukasz,
>
> I can confirm that 6.0.2 works well with the aws serverless integration.
Great to hear that, thanks a lot for testing it :)
Regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Johannes Geppert <jo...@apache.org>.
Hi Lukasz,
I can confirm that 6.0.2 works well with the aws serverless integration.
Thanks for the new release.
Best Regards
Johannes
#################################################
web: http://www.jgeppert.com
twitter: http://twitter.com/jogep
Am Do., 25. Aug. 2022 um 07:52 Uhr schrieb Lukasz Lenart <
lukaszlenart@apache.org>:
> Hello,
>
> This is the first patch version of Struts 6.x series. Please take the
> time and test the bits - any help is appreciated. Please report any
> problems you will spot.
>
> Here are the changes from the previous 6.0.0 version:
> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>
> Staging Maven repo
> https://repository.apache.org/content/groups/staging/
>
> Standalone artifacts
> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>
> Release notes
> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>
>
> Kind regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
Great to hear that, I will wait a bit then merge the PR and issue a
new test build, thanks a lot for testing this version!!!
Cheers
Łukasz
czw., 1 wrz 2022 o 09:25 info@flyingfischer.ch <in...@flyingfischer.ch>
napisał(a):
>
> Resolved the other "phenomenon". Was an issue on my side around
> Modeldriven<MyObject> and mixed up getters.
>
> Best regards
> Markus
>
>
> Am 01.09.22 um 09:07 schrieb info@flyingfischer.ch:
> > Thanks Łukasz
> >
> > looks good to me. Provides the possibility to opt out on any given
> > fine grained use case while maintaing a general stricter approach.
> >
> > Best regards
> > Markus
> >
> > PS: looking right now into another strange phenomenon on a different
> > topic while testing. I will open a separate thread. I need to do some
> > more testing.
> >
> >
> > Am 01.09.22 um 08:19 schrieb Lukasz Lenart:
> >> After re-thinking my idea with a dedicated stack, I prepared a PR
> >> which allows to disable those interceptors
> >> https://issues.apache.org/jira/browse/WW-5218
> >>
> >> In other ways no one will adopt them, enforcing users to use them with
> >> the option to disable them should help raise more notions about CSP,
> >> wdyt?
> >>
> >>
> >> Regards
> >> --
> >> Łukasz
> >> + 48 606 323 122 http://www.lenart.org.pl/
> >>
> >> śr., 31 sie 2022 o 14:29 Johannes Geppert <jo...@apache.org> napisał(a):
> >>> +1 for dedicated stack, but not sure if we should name it "default
> >>> secure
> >>> stack" as it implies that the other stacks are not secure. 😉
> >>>
> >>> My 2ct on this
> >>>
> >>> Best Regards
> >>>
> >>> Johannes
> >>>
> >>> info@flyingfischer.ch <in...@flyingfischer.ch> schrieb am Mi., 31. Aug.
> >>> 2022, 14:20:
> >>>
> >>>> Creating a new default secure stack sounds good to me. Thank for
> >>>> considering.
> >>>>
> >>>> As far as I can see there would be 4 additional interceptors in this
> >>>> secure stack:
> >>>>
> >>>> CoepInterceptor.java
> >>>> CoopInterceptor.java
> >>>> CspInterceptor.java
> >>>> FetchMetadataInterceptor.java
> >>>>
> >>>> And the appropriate resources used by them:
> >>>> ResourceIsolationPolicy.java
> >>>> StrutsResourceIsolationPolicy.java
> >>>>
> >>>> Best regards
> >>>> Markus
> >>>>
> >>>>
> >>>> Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
> >>>>> I think disabling them doesn't make sense - these are just
> >>>>> interceptors so you can create your own stack without them. I would
> >>>>> rather create a new default secure stack and move those interceptors
> >>>>> into that stack, wdyt?
> >>>>>
> >>>>>
> >>>>> Regards
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>
> >>>>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: dev-help@struts.apache.org
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > For additional commands, e-mail: dev-help@struts.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Resolved the other "phenomenon". Was an issue on my side around
Modeldriven<MyObject> and mixed up getters.
Best regards
Markus
Am 01.09.22 um 09:07 schrieb info@flyingfischer.ch:
> Thanks Łukasz
>
> looks good to me. Provides the possibility to opt out on any given
> fine grained use case while maintaing a general stricter approach.
>
> Best regards
> Markus
>
> PS: looking right now into another strange phenomenon on a different
> topic while testing. I will open a separate thread. I need to do some
> more testing.
>
>
> Am 01.09.22 um 08:19 schrieb Lukasz Lenart:
>> After re-thinking my idea with a dedicated stack, I prepared a PR
>> which allows to disable those interceptors
>> https://issues.apache.org/jira/browse/WW-5218
>>
>> In other ways no one will adopt them, enforcing users to use them with
>> the option to disable them should help raise more notions about CSP,
>> wdyt?
>>
>>
>> Regards
>> --
>> Łukasz
>> + 48 606 323 122 http://www.lenart.org.pl/
>>
>> śr., 31 sie 2022 o 14:29 Johannes Geppert <jo...@apache.org> napisał(a):
>>> +1 for dedicated stack, but not sure if we should name it "default
>>> secure
>>> stack" as it implies that the other stacks are not secure. 😉
>>>
>>> My 2ct on this
>>>
>>> Best Regards
>>>
>>> Johannes
>>>
>>> info@flyingfischer.ch <in...@flyingfischer.ch> schrieb am Mi., 31. Aug.
>>> 2022, 14:20:
>>>
>>>> Creating a new default secure stack sounds good to me. Thank for
>>>> considering.
>>>>
>>>> As far as I can see there would be 4 additional interceptors in this
>>>> secure stack:
>>>>
>>>> CoepInterceptor.java
>>>> CoopInterceptor.java
>>>> CspInterceptor.java
>>>> FetchMetadataInterceptor.java
>>>>
>>>> And the appropriate resources used by them:
>>>> ResourceIsolationPolicy.java
>>>> StrutsResourceIsolationPolicy.java
>>>>
>>>> Best regards
>>>> Markus
>>>>
>>>>
>>>> Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
>>>>> I think disabling them doesn't make sense - these are just
>>>>> interceptors so you can create your own stack without them. I would
>>>>> rather create a new default secure stack and move those interceptors
>>>>> into that stack, wdyt?
>>>>>
>>>>>
>>>>> Regards
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Thanks Łukasz
looks good to me. Provides the possibility to opt out on any given fine
grained use case while maintaing a general stricter approach.
Best regards
Markus
PS: looking right now into another strange phenomenon on a different
topic while testing. I will open a separate thread. I need to do some
more testing.
Am 01.09.22 um 08:19 schrieb Lukasz Lenart:
> After re-thinking my idea with a dedicated stack, I prepared a PR
> which allows to disable those interceptors
> https://issues.apache.org/jira/browse/WW-5218
>
> In other ways no one will adopt them, enforcing users to use them with
> the option to disable them should help raise more notions about CSP,
> wdyt?
>
>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> śr., 31 sie 2022 o 14:29 Johannes Geppert <jo...@apache.org> napisał(a):
>> +1 for dedicated stack, but not sure if we should name it "default secure
>> stack" as it implies that the other stacks are not secure. 😉
>>
>> My 2ct on this
>>
>> Best Regards
>>
>> Johannes
>>
>> info@flyingfischer.ch <in...@flyingfischer.ch> schrieb am Mi., 31. Aug.
>> 2022, 14:20:
>>
>>> Creating a new default secure stack sounds good to me. Thank for
>>> considering.
>>>
>>> As far as I can see there would be 4 additional interceptors in this
>>> secure stack:
>>>
>>> CoepInterceptor.java
>>> CoopInterceptor.java
>>> CspInterceptor.java
>>> FetchMetadataInterceptor.java
>>>
>>> And the appropriate resources used by them:
>>> ResourceIsolationPolicy.java
>>> StrutsResourceIsolationPolicy.java
>>>
>>> Best regards
>>> Markus
>>>
>>>
>>> Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
>>>> I think disabling them doesn't make sense - these are just
>>>> interceptors so you can create your own stack without them. I would
>>>> rather create a new default secure stack and move those interceptors
>>>> into that stack, wdyt?
>>>>
>>>>
>>>> Regards
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
After re-thinking my idea with a dedicated stack, I prepared a PR
which allows to disable those interceptors
https://issues.apache.org/jira/browse/WW-5218
In other ways no one will adopt them, enforcing users to use them with
the option to disable them should help raise more notions about CSP,
wdyt?
Regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
śr., 31 sie 2022 o 14:29 Johannes Geppert <jo...@apache.org> napisał(a):
>
> +1 for dedicated stack, but not sure if we should name it "default secure
> stack" as it implies that the other stacks are not secure. 😉
>
> My 2ct on this
>
> Best Regards
>
> Johannes
>
> info@flyingfischer.ch <in...@flyingfischer.ch> schrieb am Mi., 31. Aug.
> 2022, 14:20:
>
> > Creating a new default secure stack sounds good to me. Thank for
> > considering.
> >
> > As far as I can see there would be 4 additional interceptors in this
> > secure stack:
> >
> > CoepInterceptor.java
> > CoopInterceptor.java
> > CspInterceptor.java
> > FetchMetadataInterceptor.java
> >
> > And the appropriate resources used by them:
> > ResourceIsolationPolicy.java
> > StrutsResourceIsolationPolicy.java
> >
> > Best regards
> > Markus
> >
> >
> > Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
> > > I think disabling them doesn't make sense - these are just
> > > interceptors so you can create your own stack without them. I would
> > > rather create a new default secure stack and move those interceptors
> > > into that stack, wdyt?
> > >
> > >
> > > Regards
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > For additional commands, e-mail: dev-help@struts.apache.org
> >
> >
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Johannes Geppert <jo...@apache.org>.
+1 for dedicated stack, but not sure if we should name it "default secure
stack" as it implies that the other stacks are not secure. 😉
My 2ct on this
Best Regards
Johannes
info@flyingfischer.ch <in...@flyingfischer.ch> schrieb am Mi., 31. Aug.
2022, 14:20:
> Creating a new default secure stack sounds good to me. Thank for
> considering.
>
> As far as I can see there would be 4 additional interceptors in this
> secure stack:
>
> CoepInterceptor.java
> CoopInterceptor.java
> CspInterceptor.java
> FetchMetadataInterceptor.java
>
> And the appropriate resources used by them:
> ResourceIsolationPolicy.java
> StrutsResourceIsolationPolicy.java
>
> Best regards
> Markus
>
>
> Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
> > I think disabling them doesn't make sense - these are just
> > interceptors so you can create your own stack without them. I would
> > rather create a new default secure stack and move those interceptors
> > into that stack, wdyt?
> >
> >
> > Regards
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Creating a new default secure stack sounds good to me. Thank for
considering.
As far as I can see there would be 4 additional interceptors in this
secure stack:
CoepInterceptor.java
CoopInterceptor.java
CspInterceptor.java
FetchMetadataInterceptor.java
And the appropriate resources used by them:
ResourceIsolationPolicy.java
StrutsResourceIsolationPolicy.java
Best regards
Markus
Am 31.08.22 um 14:11 schrieb Lukasz Lenart:
> I think disabling them doesn't make sense - these are just
> interceptors so you can create your own stack without them. I would
> rather create a new default secure stack and move those interceptors
> into that stack, wdyt?
>
>
> Regards
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
I think disabling them doesn't make sense - these are just
interceptors so you can create your own stack without them. I would
rather create a new default secure stack and move those interceptors
into that stack, wdyt?
Regards
--
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
I have a use case, where it is no option to muddle with headers. The
headers are dynamically controlled by the App.
So I really would need an option to remove any well-intentioned, but not
wanted headers. This seems not easily possible with the added CSP in 6.x
version.
Any chance that such an option would be added? I would prefer to do
without defining my own struts-default.xml.
---
COEP Interceptor
https://struts.apache.org/core-developers/coep-interceptor
Can be disabled
<interceptor-ref name="defaultStack">
<param name="coepInterceptor.disabled">true</param>
</interceptor-ref>
---
COOP Interceptor
https://struts.apache.org/core-developers/coop-interceptor
Has no option to be disabled. The only option would be:
<interceptor-ref name="defaultStack">
<param name="coopInterceptor.mode">unsafe-none</param>
</interceptor-ref>
This still adds a header
Cross-Origin-Opener-Policy: unsafe-none
--
Fetch Metadata Interceptor
https://struts.apache.org/core-developers/fetch-metadata-interceptor
Has no option to be disabled. Only knows
<interceptor-ref name="defaultStack">
<param
name="fetchMetadata.exemptedPaths">/path1,/path2,/path3</param>
</interceptor-ref>
Am 30.08.22 um 16:43 schrieb info@flyingfischer.ch:
> Thanks Łukasz
>
> Any chance to disable this on domain basis, or even totally? I fear
> coopInterceptor.exemptedPaths will not be sufficiant in my case.
>
> Best regards
> Markus
>
>
> Am 30.08.22 um 16:22 schrieb Łukasz Lenart:
>> CSP was added in 6.x version
>>
>> https://struts.apache.org/core-developers/coop-interceptor
>> https://struts.apache.org/core-developers/coop-interceptor
>> https://struts.apache.org/core-developers/fetch-metadata-interceptor
>>
>>
>> W dniu wt., 30.08.2022 o 15:54 info@flyingfischer.ch
>> <in...@flyingfischer.ch>
>> napisał(a):
>>
>>> It looks like an cross-site issue: The error does only appear, when the
>>> request is called from a third party domain. When called from a
>>> subdomain of the main domain, the error does not appear.
>>>
>>> Regards
>>> Markus
>>>
>>>
>>> Am 30.08.22 um 15:35 schrieb info@flyingfischer.ch:
>>>> I am puzzled, calling the same request on the console works:
>>>>
>>>> curl -i -X OPTIONS https://domain/context/mypath?url=urlEncodedUrl
>>>> HTTP/1.1 302
>>>> Cache-control: no-cache, no-store
>>>> Pragma: no-cache
>>>> Expires: -1
>>>> Vary: Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User
>>>> Cross-Origin-Embedder-Policy-Report-Only: require-corp
>>>> Cross-Origin-Opener-Policy: same-origin
>>>> Location: /context/otherpath?url=urlEncodedUrl
>>>> Content-Language: de-CH
>>>> Content-Length: 0
>>>> Date: Tue, 30 Aug 2022 13:23:17 GMT
>>>> Server: Apache
>>>>
>>>> I need to meditate...
>>>>
>>>> Regards
>>>> Markus
>>>>
>>>> Am 30.08.22 um 14:41 schrieb info@flyingfischer.ch:
>>>>> The action and the result actually do exist as redirectAction
>>>>>
>>>>> <result name="resultName" type="redirectAction">
>>>>> <param name="actionName">otherpath</param>
>>>>> <param name="url">${url}</param>
>>>>> </result>
>>>>>
>>>>> This works:
>>>>> GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
>>>>>
>>>>> This fails:
>>>>> OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
>>>>>
>>>>> But yes, strange that OPTIONS returns 404, while WARN
>>>>> org.apache.struts2.dispatcher.Dispatcher returns 403.
>>>>>
>>>>> Regards
>>>>> Markus
>>>>>
>>>>>
>>>>> Am 30.08.22 um 14:32 schrieb Yasser Zamani:
>>>>>> Thanks. I see "...and result 403..." so looks like the underlying
>>>>>> action has responded with 403 i.e. forbidden and you haven't defined
>>>>>> such result for this action in struts.xml? wdyt?
>>>>>>
>>>>>> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
>>>>>>> Hi Yasser
>>>>>>> sure.
>>>>>>>
>>>>>>> Regards
>>>>>>> Markus
>>>>>>>
>>>>>>>
>>>>>>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher
>>>>>>> - Could not find action or result:
>>>>>>> /context/mypath?url=urlEncodedUrl
>>>>>>> No result defined for action ch.xx.xx.xx and result 403 - action -
>>>>>>>
>>> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
>>>>>>> at
>>>>>>>
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>>>
>>>
>>>>>>> at
>>>>>>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>>>>>>>
>>>>>>> at
>>>>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>>>>>>
>>>>>>> at
>>>>>>>
>>> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>>>
>>>
>>>>>>> at
>>>>>>>
>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>
>>>
>>>>>>> at java.base/java.lang.Thread.run(Thread.java:833)
>>>>>>>
>>>>>>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>>>>>>>> Hi Markus,
>>>>>>>>
>>>>>>>> I see corresponding codes in Struts:
>>>>>>>> if (devMode) {
>>>>>>>> LOG.error("Could not find action or result: {}",
>>>>>>>> uri, e);
>>>>>>>> } else if (LOG.isWarnEnabled()) {
>>>>>>>> LOG.warn("Could not find action or result: {}",
>>>>>>>> uri, e);
>>>>>>>> }
>>>>>>>> so it seems you should also have the exception e stack trace
>>>>>>>> logged. Could you please share it as well? I guess you might
>>>>>>>> affected by [1] but honestly hard to say how. So the stack trace
>>>>>>>> could help a lot.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Yasser
>>>>>>>>
>>>>>>>> [1]
>>>>>>>>
>>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>>
>>>>>>>>
>>>>>>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>>>>>>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>>>>>>>> requests....
>>>>>>>>>
>>>>>>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>>>>>>>> After removing commons-digester3-3.2 and leaving
>>>>>>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>>>>>>>> production:
>>>>>>>>>>
>>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>>
>>>>>>>>>> Seems to be a new issue in Struts6 and not really related to
>>>>>>>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>>>>>>>> straightforward. I just see the error in the log. Calling the
>>>>>>>>>> path directly does not cause the issue. May there be a
>>>>>>>>>> connection with a not present session?
>>>>>>>>>>
>>>>>>>>>> Markus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>>>>>>>> Removing commons-digester-2.1 gives:
>>>>>>>>>>>
>>>>>>>>>>> java.lang.NoClassDefFoundError:
>>>>>>>>>>> org/apache/commons/digester/Rule
>>>>>>>>>>>
>>>>>>>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>>>>>>>> start.
>>>>>>>>>>>
>>>>>>>>>>> I will replace the application in production and check, if the
>>>>>>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>>>>>>>> disappear.
>>>>>>>>>>>
>>>>>>>>>>> Regards
>>>>>>>>>>> Markus
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>>>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>>>>>>>
>>>>>>>>>>>> Regards
>>>>>>>>>>>> Łukasz
>>>>>>>>>>>>
>>>>>>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>>>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>>>>>>>> hmm, in production I see from time to time:
>>>>>>>>>>>>>
>>>>>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not
>>>>>>>>>>>>> find action or
>>>>>>>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>>>>>
>>>>>>>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>>>>>>>
>>>>>>>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>>>>>>>> <param name="actionName">otherpath</param>
>>>>>>>>>>>>> <param name="url">${url}</param>
>>>>>>>>>>>>> </result>
>>>>>>>>>>>>>
>>>>>>>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>>>>>>>> consistently, but
>>>>>>>>>>>>> there seems to be thrown an error in
>>>>>>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>>>>>>>> these lines:
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> try {
>>>>>>>>>>>>> String actionNamespace =
>>>>>>>>>>>>> mapping.getNamespace();
>>>>>>>>>>>>> String actionName = mapping.getName();
>>>>>>>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>>>>>>>
>>>>>>>>>>>>> LOG.trace("Processing action, namespace: {},
>>>>>>>>>>>>> name: {},
>>>>>>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>>>>>>>> ActionProxy proxy =
>>>>>>>>>>>>> prepareActionProxy(extraContext,
>>>>>>>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>>>>>>>
>>>>>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>>>>>
>>>>>>>>>>>>> proxy.getInvocation().getStack());
>>>>>>>>>>>>>
>>>>>>>>>>>>> // if the ActionMapping says to go straight to
>>>>>>>>>>>>> a result, do it!
>>>>>>>>>>>>> if (mapping.getResult() != null) {
>>>>>>>>>>>>> Result result = mapping.getResult();
>>>>>>>>>>>>> result.execute(proxy.getInvocation());
>>>>>>>>>>>>> } else {
>>>>>>>>>>>>> proxy.execute();
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> // If there was a previous value stack then
>>>>>>>>>>>>> set
>>>>>>>>>>>>> it back
>>>>>>>>>>>>> onto the request
>>>>>>>>>>>>> if (!nullStack) {
>>>>>>>>>>>>>
>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>>>>> stack);
>>>>>>>>>>>>> }
>>>>>>>>>>>>> } catch (ConfigurationException e) {
>>>>>>>>>>>>> logConfigurationException(request, e);
>>>>>>>>>>>>> sendError(request, response,
>>>>>>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>>>>>>>
>>>>>>>>>>>>> commons-digester-2.1
>>>>>>>>>>>>> commons-digester3-3.2
>>>>>>>>>>>>>
>>>>>>>>>>>>> Any idea, what is causing this warning, which seems to be
>>>>>>>>>>>>> rather an error?
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best Markus
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Best regards
>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> This is the first patch version of Struts 6.x series.
>>>>>>>>>>>>>>> Please take the
>>>>>>>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>>>>>>>> report any
>>>>>>>>>>>>>>> problems you will spot.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Staging Maven repo
>>>>>>>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Standalone artifacts
>>>>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Release notes
>>>>>>>>>>>>>>>
>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Kind regards
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Łukasz
>>>>>>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>
>>>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>
>>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>
>>>>>>>>>
>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>> --
>> (mobile)
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Thanks Łukasz
Any chance to disable this on domain basis, or even totally? I fear
coopInterceptor.exemptedPaths will not be sufficiant in my case.
Best regards
Markus
Am 30.08.22 um 16:22 schrieb Łukasz Lenart:
> CSP was added in 6.x version
>
> https://struts.apache.org/core-developers/coop-interceptor
> https://struts.apache.org/core-developers/coop-interceptor
> https://struts.apache.org/core-developers/fetch-metadata-interceptor
>
>
> W dniu wt., 30.08.2022 o 15:54 info@flyingfischer.ch <in...@flyingfischer.ch>
> napisał(a):
>
>> It looks like an cross-site issue: The error does only appear, when the
>> request is called from a third party domain. When called from a
>> subdomain of the main domain, the error does not appear.
>>
>> Regards
>> Markus
>>
>>
>> Am 30.08.22 um 15:35 schrieb info@flyingfischer.ch:
>>> I am puzzled, calling the same request on the console works:
>>>
>>> curl -i -X OPTIONS https://domain/context/mypath?url=urlEncodedUrl
>>> HTTP/1.1 302
>>> Cache-control: no-cache, no-store
>>> Pragma: no-cache
>>> Expires: -1
>>> Vary: Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User
>>> Cross-Origin-Embedder-Policy-Report-Only: require-corp
>>> Cross-Origin-Opener-Policy: same-origin
>>> Location: /context/otherpath?url=urlEncodedUrl
>>> Content-Language: de-CH
>>> Content-Length: 0
>>> Date: Tue, 30 Aug 2022 13:23:17 GMT
>>> Server: Apache
>>>
>>> I need to meditate...
>>>
>>> Regards
>>> Markus
>>>
>>> Am 30.08.22 um 14:41 schrieb info@flyingfischer.ch:
>>>> The action and the result actually do exist as redirectAction
>>>>
>>>> <result name="resultName" type="redirectAction">
>>>> <param name="actionName">otherpath</param>
>>>> <param name="url">${url}</param>
>>>> </result>
>>>>
>>>> This works:
>>>> GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
>>>>
>>>> This fails:
>>>> OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
>>>>
>>>> But yes, strange that OPTIONS returns 404, while WARN
>>>> org.apache.struts2.dispatcher.Dispatcher returns 403.
>>>>
>>>> Regards
>>>> Markus
>>>>
>>>>
>>>> Am 30.08.22 um 14:32 schrieb Yasser Zamani:
>>>>> Thanks. I see "...and result 403..." so looks like the underlying
>>>>> action has responded with 403 i.e. forbidden and you haven't defined
>>>>> such result for this action in struts.xml? wdyt?
>>>>>
>>>>> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
>>>>>> Hi Yasser
>>>>>> sure.
>>>>>>
>>>>>> Regards
>>>>>> Markus
>>>>>>
>>>>>>
>>>>>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher
>>>>>> - Could not find action or result: /context/mypath?url=urlEncodedUrl
>>>>>> No result defined for action ch.xx.xx.xx and result 403 - action -
>>>>>>
>> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>>
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
>>>>>> at
>>>>>>
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
>>>>>> at
>>>>>>
>> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>>
>>>>>> at
>>>>>>
>> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>>
>>>>>> at
>>>>>>
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
>>>>>> at
>>>>>>
>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
>>>>>> at
>>>>>>
>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>>
>>>>>> at
>>>>>>
>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>>
>>>>>> at
>>>>>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>>>>>> at
>>>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>>>>> at
>>>>>>
>> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>>
>>>>>> at
>>>>>>
>> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>>
>>>>>> at
>>>>>>
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>
>>>>>> at java.base/java.lang.Thread.run(Thread.java:833)
>>>>>>
>>>>>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>>>>>>> Hi Markus,
>>>>>>>
>>>>>>> I see corresponding codes in Struts:
>>>>>>> if (devMode) {
>>>>>>> LOG.error("Could not find action or result: {}", uri, e);
>>>>>>> } else if (LOG.isWarnEnabled()) {
>>>>>>> LOG.warn("Could not find action or result: {}", uri, e);
>>>>>>> }
>>>>>>> so it seems you should also have the exception e stack trace
>>>>>>> logged. Could you please share it as well? I guess you might
>>>>>>> affected by [1] but honestly hard to say how. So the stack trace
>>>>>>> could help a lot.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Yasser
>>>>>>>
>>>>>>> [1]
>>>>>>>
>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>>>>>>
>>>>>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>>>>>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>>>>>>> requests....
>>>>>>>>
>>>>>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>>>>>>> After removing commons-digester3-3.2 and leaving
>>>>>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>>>>>>> production:
>>>>>>>>>
>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>
>>>>>>>>> Seems to be a new issue in Struts6 and not really related to
>>>>>>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>>>>>>> straightforward. I just see the error in the log. Calling the
>>>>>>>>> path directly does not cause the issue. May there be a
>>>>>>>>> connection with a not present session?
>>>>>>>>>
>>>>>>>>> Markus
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>>>>>>> Removing commons-digester-2.1 gives:
>>>>>>>>>>
>>>>>>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>>>>>>
>>>>>>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>>>>>>> start.
>>>>>>>>>>
>>>>>>>>>> I will replace the application in production and check, if the
>>>>>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>>>>>>> disappear.
>>>>>>>>>>
>>>>>>>>>> Regards
>>>>>>>>>> Markus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>>>>>>
>>>>>>>>>>> Regards
>>>>>>>>>>> Łukasz
>>>>>>>>>>>
>>>>>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>>>>>>> hmm, in production I see from time to time:
>>>>>>>>>>>>
>>>>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not
>>>>>>>>>>>> find action or
>>>>>>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>>>>
>>>>>>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>>>>>>
>>>>>>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>>>>>>> <param name="actionName">otherpath</param>
>>>>>>>>>>>> <param name="url">${url}</param>
>>>>>>>>>>>> </result>
>>>>>>>>>>>>
>>>>>>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>>>>>>> consistently, but
>>>>>>>>>>>> there seems to be thrown an error in
>>>>>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>>>>>>> these lines:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> try {
>>>>>>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>>>>>>> String actionName = mapping.getName();
>>>>>>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>>>>>>
>>>>>>>>>>>> LOG.trace("Processing action, namespace: {},
>>>>>>>>>>>> name: {},
>>>>>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>>>>>>> ActionProxy proxy =
>>>>>>>>>>>> prepareActionProxy(extraContext,
>>>>>>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>>>>>>
>>>>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>>>> proxy.getInvocation().getStack());
>>>>>>>>>>>>
>>>>>>>>>>>> // if the ActionMapping says to go straight to
>>>>>>>>>>>> a result, do it!
>>>>>>>>>>>> if (mapping.getResult() != null) {
>>>>>>>>>>>> Result result = mapping.getResult();
>>>>>>>>>>>> result.execute(proxy.getInvocation());
>>>>>>>>>>>> } else {
>>>>>>>>>>>> proxy.execute();
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> // If there was a previous value stack then set
>>>>>>>>>>>> it back
>>>>>>>>>>>> onto the request
>>>>>>>>>>>> if (!nullStack) {
>>>>>>>>>>>>
>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>>>> stack);
>>>>>>>>>>>> }
>>>>>>>>>>>> } catch (ConfigurationException e) {
>>>>>>>>>>>> logConfigurationException(request, e);
>>>>>>>>>>>> sendError(request, response,
>>>>>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>>>>>>
>>>>>>>>>>>> commons-digester-2.1
>>>>>>>>>>>> commons-digester3-3.2
>>>>>>>>>>>>
>>>>>>>>>>>> Any idea, what is causing this warning, which seems to be
>>>>>>>>>>>> rather an error?
>>>>>>>>>>>>
>>>>>>>>>>>> Best Markus
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best regards
>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> This is the first patch version of Struts 6.x series.
>>>>>>>>>>>>>> Please take the
>>>>>>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>>>>>>> report any
>>>>>>>>>>>>>> problems you will spot.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Staging Maven repo
>>>>>>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Standalone artifacts
>>>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Release notes
>>>>>>>>>>>>>>
>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Kind regards
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> Łukasz
>>>>>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>
>>>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>
>>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>>>
>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>> --
> (mobile)
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Łukasz Lenart <lu...@gmail.com>.
CSP was added in 6.x version
https://struts.apache.org/core-developers/coop-interceptor
https://struts.apache.org/core-developers/coop-interceptor
https://struts.apache.org/core-developers/fetch-metadata-interceptor
W dniu wt., 30.08.2022 o 15:54 info@flyingfischer.ch <in...@flyingfischer.ch>
napisał(a):
> It looks like an cross-site issue: The error does only appear, when the
> request is called from a third party domain. When called from a
> subdomain of the main domain, the error does not appear.
>
> Regards
> Markus
>
>
> Am 30.08.22 um 15:35 schrieb info@flyingfischer.ch:
> > I am puzzled, calling the same request on the console works:
> >
> > curl -i -X OPTIONS https://domain/context/mypath?url=urlEncodedUrl
> > HTTP/1.1 302
> > Cache-control: no-cache, no-store
> > Pragma: no-cache
> > Expires: -1
> > Vary: Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User
> > Cross-Origin-Embedder-Policy-Report-Only: require-corp
> > Cross-Origin-Opener-Policy: same-origin
> > Location: /context/otherpath?url=urlEncodedUrl
> > Content-Language: de-CH
> > Content-Length: 0
> > Date: Tue, 30 Aug 2022 13:23:17 GMT
> > Server: Apache
> >
> > I need to meditate...
> >
> > Regards
> > Markus
> >
> > Am 30.08.22 um 14:41 schrieb info@flyingfischer.ch:
> >> The action and the result actually do exist as redirectAction
> >>
> >> <result name="resultName" type="redirectAction">
> >> <param name="actionName">otherpath</param>
> >> <param name="url">${url}</param>
> >> </result>
> >>
> >> This works:
> >> GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
> >>
> >> This fails:
> >> OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
> >>
> >> But yes, strange that OPTIONS returns 404, while WARN
> >> org.apache.struts2.dispatcher.Dispatcher returns 403.
> >>
> >> Regards
> >> Markus
> >>
> >>
> >> Am 30.08.22 um 14:32 schrieb Yasser Zamani:
> >>> Thanks. I see "...and result 403..." so looks like the underlying
> >>> action has responded with 403 i.e. forbidden and you haven't defined
> >>> such result for this action in struts.xml? wdyt?
> >>>
> >>> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
> >>>> Hi Yasser
> >>>> sure.
> >>>>
> >>>> Regards
> >>>> Markus
> >>>>
> >>>>
> >>>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher
> >>>> - Could not find action or result: /context/mypath?url=urlEncodedUrl
> >>>> No result defined for action ch.xx.xx.xx and result 403 - action -
> >>>>
> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>
> >>>>
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
> >>>> at
> >>>>
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
> >>>> at
> >>>>
> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>
> >>>>
> >>>> at
> >>>>
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>
> >>>>
> >>>> at
> >>>>
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
> >>>> at
> >>>>
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
> >>>> at
> >>>>
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>
> >>>>
> >>>> at
> >>>>
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>
> >>>>
> >>>> at
> >>>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>
> >>>>
> >>>> at
> >>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>
> >>>>
> >>>> at
> >>>>
> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>
> >>>>
> >>>> at
> >>>>
> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>
> >>>>
> >>>> at
> >>>>
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>
> >>>>
> >>>> at java.base/java.lang.Thread.run(Thread.java:833)
> >>>>
> >>>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
> >>>>> Hi Markus,
> >>>>>
> >>>>> I see corresponding codes in Struts:
> >>>>> if (devMode) {
> >>>>> LOG.error("Could not find action or result: {}", uri, e);
> >>>>> } else if (LOG.isWarnEnabled()) {
> >>>>> LOG.warn("Could not find action or result: {}", uri, e);
> >>>>> }
> >>>>> so it seems you should also have the exception e stack trace
> >>>>> logged. Could you please share it as well? I guess you might
> >>>>> affected by [1] but honestly hard to say how. So the stack trace
> >>>>> could help a lot.
> >>>>>
> >>>>> Regards,
> >>>>> Yasser
> >>>>>
> >>>>> [1]
> >>>>>
> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
> >>>>>
> >>>>>
> >>>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
> >>>>>> If I see this correctly, this happens only with OPTIONS and HEAD
> >>>>>> requests....
> >>>>>>
> >>>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
> >>>>>>> After removing commons-digester3-3.2 and leaving
> >>>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
> >>>>>>> production:
> >>>>>>>
> >>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
> >>>>>>> action or result: /context/mypath?url=urlEncodedUrl
> >>>>>>>
> >>>>>>> Seems to be a new issue in Struts6 and not really related to
> >>>>>>> commons-digester? Unfortunately I cannot reproduce the issue
> >>>>>>> straightforward. I just see the error in the log. Calling the
> >>>>>>> path directly does not cause the issue. May there be a
> >>>>>>> connection with a not present session?
> >>>>>>>
> >>>>>>> Markus
> >>>>>>>
> >>>>>>>
> >>>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
> >>>>>>>> Removing commons-digester-2.1 gives:
> >>>>>>>>
> >>>>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
> >>>>>>>>
> >>>>>>>> I am able to remove commons-digester3-3.2: the application does
> >>>>>>>> start.
> >>>>>>>>
> >>>>>>>> I will replace the application in production and check, if the
> >>>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
> >>>>>>>> disappear.
> >>>>>>>>
> >>>>>>>> Regards
> >>>>>>>> Markus
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
> >>>>>>>>> Could you exclude commons-digester in the Tiles plugin?
> >>>>>>>>>
> >>>>>>>>> Regards
> >>>>>>>>> Łukasz
> >>>>>>>>>
> >>>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
> >>>>>>>>> <in...@flyingfischer.ch> napisał(a):
> >>>>>>>>>> hmm, in production I see from time to time:
> >>>>>>>>>>
> >>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not
> >>>>>>>>>> find action or
> >>>>>>>>>> result: /context/mypath?url=urlEncodedUrl
> >>>>>>>>>>
> >>>>>>>>>> The action exists and the result also, as redirectAction
> >>>>>>>>>>
> >>>>>>>>>> <result name="resultName" type="redirectAction">
> >>>>>>>>>> <param name="actionName">otherpath</param>
> >>>>>>>>>> <param name="url">${url}</param>
> >>>>>>>>>> </result>
> >>>>>>>>>>
> >>>>>>>>>> This behaviour seems to be new. I cannot reproduce it
> >>>>>>>>>> consistently, but
> >>>>>>>>>> there seems to be thrown an error in
> >>>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
> >>>>>>>>>> these lines:
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> try {
> >>>>>>>>>> String actionNamespace = mapping.getNamespace();
> >>>>>>>>>> String actionName = mapping.getName();
> >>>>>>>>>> String actionMethod = mapping.getMethod();
> >>>>>>>>>>
> >>>>>>>>>> LOG.trace("Processing action, namespace: {},
> >>>>>>>>>> name: {},
> >>>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
> >>>>>>>>>> ActionProxy proxy =
> >>>>>>>>>> prepareActionProxy(extraContext,
> >>>>>>>>>> actionNamespace, actionName, actionMethod);
> >>>>>>>>>>
> >>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
> >>>>>>>>>> proxy.getInvocation().getStack());
> >>>>>>>>>>
> >>>>>>>>>> // if the ActionMapping says to go straight to
> >>>>>>>>>> a result, do it!
> >>>>>>>>>> if (mapping.getResult() != null) {
> >>>>>>>>>> Result result = mapping.getResult();
> >>>>>>>>>> result.execute(proxy.getInvocation());
> >>>>>>>>>> } else {
> >>>>>>>>>> proxy.execute();
> >>>>>>>>>> }
> >>>>>>>>>>
> >>>>>>>>>> // If there was a previous value stack then set
> >>>>>>>>>> it back
> >>>>>>>>>> onto the request
> >>>>>>>>>> if (!nullStack) {
> >>>>>>>>>>
> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
> >>>>>>>>>> stack);
> >>>>>>>>>> }
> >>>>>>>>>> } catch (ConfigurationException e) {
> >>>>>>>>>> logConfigurationException(request, e);
> >>>>>>>>>> sendError(request, response,
> >>>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
> >>>>>>>>>> }
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> The artifacts contains two version of commons-digester:
> >>>>>>>>>>
> >>>>>>>>>> commons-digester-2.1
> >>>>>>>>>> commons-digester3-3.2
> >>>>>>>>>>
> >>>>>>>>>> Any idea, what is causing this warning, which seems to be
> >>>>>>>>>> rather an error?
> >>>>>>>>>>
> >>>>>>>>>> Best Markus
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
> >>>>>>>>>>> Works fine here. Tested with tiles-plugin.
> >>>>>>>>>>>
> >>>>>>>>>>> Best regards
> >>>>>>>>>>> Markus
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
> >>>>>>>>>>>> Hello,
> >>>>>>>>>>>>
> >>>>>>>>>>>> This is the first patch version of Struts 6.x series.
> >>>>>>>>>>>> Please take the
> >>>>>>>>>>>> time and test the bits - any help is appreciated. Please
> >>>>>>>>>>>> report any
> >>>>>>>>>>>> problems you will spot.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
> >>>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
> >>>>>>>>>>>>
> >>>>>>>>>>>> Staging Maven repo
> >>>>>>>>>>>> https://repository.apache.org/content/groups/staging/
> >>>>>>>>>>>>
> >>>>>>>>>>>> Standalone artifacts
> >>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
> >>>>>>>>>>>>
> >>>>>>>>>>>> Release notes
> >>>>>>>>>>>>
> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> Kind regards
> >>>>>>>>>>>> --
> >>>>>>>>>>>> Łukasz
> >>>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> ---------------------------------------------------------------------
> >>>>>>>>>>>>
> >>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>>>>>>>
> >>>>>>>>>>>
> ---------------------------------------------------------------------
> >>>>>>>>>>>
> >>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>>>>>>
> >>>>>>>>>
> ---------------------------------------------------------------------
> >>>>>>>>>
> >>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> ---------------------------------------------------------------------
> >>>>>>>>
> >>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> ---------------------------------------------------------------------
> >>>>>>>
> >>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>>
> >>>>>>
> >>>>>>
> ---------------------------------------------------------------------
> >>>>>>
> >>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>>
> >>>>>
> >>>>> ---------------------------------------------------------------------
> >>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>>
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >>> For additional commands, e-mail: dev-help@struts.apache.org
> >>>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: dev-help@struts.apache.org
> >>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
> --
(mobile)
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
It looks like an cross-site issue: The error does only appear, when the
request is called from a third party domain. When called from a
subdomain of the main domain, the error does not appear.
Regards
Markus
Am 30.08.22 um 15:35 schrieb info@flyingfischer.ch:
> I am puzzled, calling the same request on the console works:
>
> curl -i -X OPTIONS https://domain/context/mypath?url=urlEncodedUrl
> HTTP/1.1 302
> Cache-control: no-cache, no-store
> Pragma: no-cache
> Expires: -1
> Vary: Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User
> Cross-Origin-Embedder-Policy-Report-Only: require-corp
> Cross-Origin-Opener-Policy: same-origin
> Location: /context/otherpath?url=urlEncodedUrl
> Content-Language: de-CH
> Content-Length: 0
> Date: Tue, 30 Aug 2022 13:23:17 GMT
> Server: Apache
>
> I need to meditate...
>
> Regards
> Markus
>
> Am 30.08.22 um 14:41 schrieb info@flyingfischer.ch:
>> The action and the result actually do exist as redirectAction
>>
>> <result name="resultName" type="redirectAction">
>> <param name="actionName">otherpath</param>
>> <param name="url">${url}</param>
>> </result>
>>
>> This works:
>> GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
>>
>> This fails:
>> OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
>>
>> But yes, strange that OPTIONS returns 404, while WARN
>> org.apache.struts2.dispatcher.Dispatcher returns 403.
>>
>> Regards
>> Markus
>>
>>
>> Am 30.08.22 um 14:32 schrieb Yasser Zamani:
>>> Thanks. I see "...and result 403..." so looks like the underlying
>>> action has responded with 403 i.e. forbidden and you haven't defined
>>> such result for this action in struts.xml? wdyt?
>>>
>>> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
>>>> Hi Yasser
>>>> sure.
>>>>
>>>> Regards
>>>> Markus
>>>>
>>>>
>>>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher
>>>> - Could not find action or result: /context/mypath?url=urlEncodedUrl
>>>> No result defined for action ch.xx.xx.xx and result 403 - action -
>>>> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>>>>
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
>>>> at
>>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>>
>>>> at
>>>> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>>>>
>>>> at
>>>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
>>>> at
>>>> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>>>>
>>>> at
>>>> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>>>>
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>>>
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>>>
>>>> at
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>>>>
>>>> at
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>>>>
>>>> at
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>>>>
>>>> at
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>>>>
>>>> at
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>>>
>>>> at
>>>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>>>>
>>>> at
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>>>>
>>>> at
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
>>>> at
>>>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
>>>> at
>>>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>>>>
>>>> at
>>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>>>>
>>>> at
>>>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>>>>
>>>> at
>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>>>
>>>> at
>>>> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>>>>
>>>> at
>>>> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>>>>
>>>> at
>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>>
>>>> at java.base/java.lang.Thread.run(Thread.java:833)
>>>>
>>>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>>>>> Hi Markus,
>>>>>
>>>>> I see corresponding codes in Struts:
>>>>> if (devMode) {
>>>>> LOG.error("Could not find action or result: {}", uri, e);
>>>>> } else if (LOG.isWarnEnabled()) {
>>>>> LOG.warn("Could not find action or result: {}", uri, e);
>>>>> }
>>>>> so it seems you should also have the exception e stack trace
>>>>> logged. Could you please share it as well? I guess you might
>>>>> affected by [1] but honestly hard to say how. So the stack trace
>>>>> could help a lot.
>>>>>
>>>>> Regards,
>>>>> Yasser
>>>>>
>>>>> [1]
>>>>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>>>>
>>>>>
>>>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>>>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>>>>> requests....
>>>>>>
>>>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>>>>> After removing commons-digester3-3.2 and leaving
>>>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>>>>> production:
>>>>>>>
>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>>>>
>>>>>>> Seems to be a new issue in Struts6 and not really related to
>>>>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>>>>> straightforward. I just see the error in the log. Calling the
>>>>>>> path directly does not cause the issue. May there be a
>>>>>>> connection with a not present session?
>>>>>>>
>>>>>>> Markus
>>>>>>>
>>>>>>>
>>>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>>>>> Removing commons-digester-2.1 gives:
>>>>>>>>
>>>>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>>>>
>>>>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>>>>> start.
>>>>>>>>
>>>>>>>> I will replace the application in production and check, if the
>>>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>>>>> disappear.
>>>>>>>>
>>>>>>>> Regards
>>>>>>>> Markus
>>>>>>>>
>>>>>>>>
>>>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>>>>
>>>>>>>>> Regards
>>>>>>>>> Łukasz
>>>>>>>>>
>>>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>>>>> hmm, in production I see from time to time:
>>>>>>>>>>
>>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not
>>>>>>>>>> find action or
>>>>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>>
>>>>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>>>>
>>>>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>>>>> <param name="actionName">otherpath</param>
>>>>>>>>>> <param name="url">${url}</param>
>>>>>>>>>> </result>
>>>>>>>>>>
>>>>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>>>>> consistently, but
>>>>>>>>>> there seems to be thrown an error in
>>>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>>>>> these lines:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> try {
>>>>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>>>>> String actionName = mapping.getName();
>>>>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>>>>
>>>>>>>>>> LOG.trace("Processing action, namespace: {},
>>>>>>>>>> name: {},
>>>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>>>>> ActionProxy proxy =
>>>>>>>>>> prepareActionProxy(extraContext,
>>>>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>>>>
>>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>> proxy.getInvocation().getStack());
>>>>>>>>>>
>>>>>>>>>> // if the ActionMapping says to go straight to
>>>>>>>>>> a result, do it!
>>>>>>>>>> if (mapping.getResult() != null) {
>>>>>>>>>> Result result = mapping.getResult();
>>>>>>>>>> result.execute(proxy.getInvocation());
>>>>>>>>>> } else {
>>>>>>>>>> proxy.execute();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> // If there was a previous value stack then set
>>>>>>>>>> it back
>>>>>>>>>> onto the request
>>>>>>>>>> if (!nullStack) {
>>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>>> stack);
>>>>>>>>>> }
>>>>>>>>>> } catch (ConfigurationException e) {
>>>>>>>>>> logConfigurationException(request, e);
>>>>>>>>>> sendError(request, response,
>>>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>>>>
>>>>>>>>>> commons-digester-2.1
>>>>>>>>>> commons-digester3-3.2
>>>>>>>>>>
>>>>>>>>>> Any idea, what is causing this warning, which seems to be
>>>>>>>>>> rather an error?
>>>>>>>>>>
>>>>>>>>>> Best Markus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>>>>
>>>>>>>>>>> Best regards
>>>>>>>>>>> Markus
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>>>>> Hello,
>>>>>>>>>>>>
>>>>>>>>>>>> This is the first patch version of Struts 6.x series.
>>>>>>>>>>>> Please take the
>>>>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>>>>> report any
>>>>>>>>>>>> problems you will spot.
>>>>>>>>>>>>
>>>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>>>>
>>>>>>>>>>>> Staging Maven repo
>>>>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>>>>
>>>>>>>>>>>> Standalone artifacts
>>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>>>>
>>>>>>>>>>>> Release notes
>>>>>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Kind regards
>>>>>>>>>>>> --
>>>>>>>>>>>> Łukasz
>>>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>>>>
>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>
>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
I am puzzled, calling the same request on the console works:
curl -i -X OPTIONS https://domain/context/mypath?url=urlEncodedUrl
HTTP/1.1 302
Cache-control: no-cache, no-store
Pragma: no-cache
Expires: -1
Vary: Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User
Cross-Origin-Embedder-Policy-Report-Only: require-corp
Cross-Origin-Opener-Policy: same-origin
Location: /context/otherpath?url=urlEncodedUrl
Content-Language: de-CH
Content-Length: 0
Date: Tue, 30 Aug 2022 13:23:17 GMT
Server: Apache
I need to meditate...
Regards
Markus
Am 30.08.22 um 14:41 schrieb info@flyingfischer.ch:
> The action and the result actually do exist as redirectAction
>
> <result name="resultName" type="redirectAction">
> <param name="actionName">otherpath</param>
> <param name="url">${url}</param>
> </result>
>
> This works:
> GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
>
> This fails:
> OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
>
> But yes, strange that OPTIONS returns 404, while WARN
> org.apache.struts2.dispatcher.Dispatcher returns 403.
>
> Regards
> Markus
>
>
> Am 30.08.22 um 14:32 schrieb Yasser Zamani:
>> Thanks. I see "...and result 403..." so looks like the underlying
>> action has responded with 403 i.e. forbidden and you haven't defined
>> such result for this action in struts.xml? wdyt?
>>
>> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
>>> Hi Yasser
>>> sure.
>>>
>>> Regards
>>> Markus
>>>
>>>
>>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher
>>> - Could not find action or result: /context/mypath?url=urlEncodedUrl
>>> No result defined for action ch.xx.xx.xx and result 403 - action -
>>> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>>>
>>> at
>>> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>>>
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
>>> at
>>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>>
>>> at
>>> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>>>
>>> at
>>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
>>> at
>>> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>>>
>>> at
>>> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>>>
>>> at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>>
>>> at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>>
>>> at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>>>
>>> at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>>>
>>> at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>>>
>>> at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>>>
>>> at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>>
>>> at
>>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>>>
>>> at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>>>
>>> at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
>>> at
>>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
>>> at
>>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>>>
>>> at
>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>>>
>>> at
>>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>>>
>>> at
>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>>
>>> at
>>> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>>>
>>> at
>>> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>>>
>>> at
>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>
>>> at java.base/java.lang.Thread.run(Thread.java:833)
>>>
>>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>>>> Hi Markus,
>>>>
>>>> I see corresponding codes in Struts:
>>>> if (devMode) {
>>>> LOG.error("Could not find action or result: {}", uri, e);
>>>> } else if (LOG.isWarnEnabled()) {
>>>> LOG.warn("Could not find action or result: {}", uri, e);
>>>> }
>>>> so it seems you should also have the exception e stack trace
>>>> logged. Could you please share it as well? I guess you might
>>>> affected by [1] but honestly hard to say how. So the stack trace
>>>> could help a lot.
>>>>
>>>> Regards,
>>>> Yasser
>>>>
>>>> [1]
>>>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>>>
>>>>
>>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>>>> requests....
>>>>>
>>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>>>> After removing commons-digester3-3.2 and leaving
>>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>>>> production:
>>>>>>
>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>>>
>>>>>> Seems to be a new issue in Struts6 and not really related to
>>>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>>>> straightforward. I just see the error in the log. Calling the
>>>>>> path directly does not cause the issue. May there be a connection
>>>>>> with a not present session?
>>>>>>
>>>>>> Markus
>>>>>>
>>>>>>
>>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>>>> Removing commons-digester-2.1 gives:
>>>>>>>
>>>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>>>
>>>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>>>> start.
>>>>>>>
>>>>>>> I will replace the application in production and check, if the
>>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>>>> disappear.
>>>>>>>
>>>>>>> Regards
>>>>>>> Markus
>>>>>>>
>>>>>>>
>>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>>>
>>>>>>>> Regards
>>>>>>>> Łukasz
>>>>>>>>
>>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>>>> hmm, in production I see from time to time:
>>>>>>>>>
>>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>>>> action or
>>>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>>>
>>>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>>>
>>>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>>>> <param name="actionName">otherpath</param>
>>>>>>>>> <param name="url">${url}</param>
>>>>>>>>> </result>
>>>>>>>>>
>>>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>>>> consistently, but
>>>>>>>>> there seems to be thrown an error in
>>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>>>> these lines:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> try {
>>>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>>>> String actionName = mapping.getName();
>>>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>>>
>>>>>>>>> LOG.trace("Processing action, namespace: {},
>>>>>>>>> name: {},
>>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>>>> ActionProxy proxy =
>>>>>>>>> prepareActionProxy(extraContext,
>>>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>>>
>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>> proxy.getInvocation().getStack());
>>>>>>>>>
>>>>>>>>> // if the ActionMapping says to go straight to a
>>>>>>>>> result, do it!
>>>>>>>>> if (mapping.getResult() != null) {
>>>>>>>>> Result result = mapping.getResult();
>>>>>>>>> result.execute(proxy.getInvocation());
>>>>>>>>> } else {
>>>>>>>>> proxy.execute();
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> // If there was a previous value stack then set
>>>>>>>>> it back
>>>>>>>>> onto the request
>>>>>>>>> if (!nullStack) {
>>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>>> stack);
>>>>>>>>> }
>>>>>>>>> } catch (ConfigurationException e) {
>>>>>>>>> logConfigurationException(request, e);
>>>>>>>>> sendError(request, response,
>>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>>>
>>>>>>>>> commons-digester-2.1
>>>>>>>>> commons-digester3-3.2
>>>>>>>>>
>>>>>>>>> Any idea, what is causing this warning, which seems to be
>>>>>>>>> rather an error?
>>>>>>>>>
>>>>>>>>> Best Markus
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>>>
>>>>>>>>>> Best regards
>>>>>>>>>> Markus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>>>> Hello,
>>>>>>>>>>>
>>>>>>>>>>> This is the first patch version of Struts 6.x series. Please
>>>>>>>>>>> take the
>>>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>>>> report any
>>>>>>>>>>> problems you will spot.
>>>>>>>>>>>
>>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>>>
>>>>>>>>>>> Staging Maven repo
>>>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>>>
>>>>>>>>>>> Standalone artifacts
>>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>>>
>>>>>>>>>>> Release notes
>>>>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Kind regards
>>>>>>>>>>> --
>>>>>>>>>>> Łukasz
>>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
The action and the result actually do exist as redirectAction
<result name="resultName" type="redirectAction">
<param name="actionName">otherpath</param>
<param name="url">${url}</param>
</result>
This works:
GET /context/mypath?url=urlEncodedUrl HTTP/1.1"
This fails:
OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
But yes, strange that OPTIONS returns 404, while WARN
org.apache.struts2.dispatcher.Dispatcher returns 403.
Regards
Markus
Am 30.08.22 um 14:32 schrieb Yasser Zamani:
> Thanks. I see "...and result 403..." so looks like the underlying
> action has responded with 403 i.e. forbidden and you haven't defined
> such result for this action in struts.xml? wdyt?
>
> On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
>> Hi Yasser
>> sure.
>>
>> Regards
>> Markus
>>
>>
>> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher -
>> Could not find action or result: /context/mypath?url=urlEncodedUrl
>> No result defined for action ch.xx.xx.xx and result 403 - action -
>> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>>
>> at
>> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>>
>> at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>
>> at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>>
>> at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>>
>> at
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>>
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
>> at
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>>
>> at
>> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>>
>> at
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
>> at
>> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>>
>> at
>> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>>
>> at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>
>> at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>>
>> at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>>
>> at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>>
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>>
>> at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>
>> at
>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>>
>> at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>>
>> at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
>> at
>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
>> at
>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>>
>> at
>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>>
>> at
>> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>>
>> at
>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>
>> at
>> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>>
>> at
>> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>>
>> at
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>
>> at java.base/java.lang.Thread.run(Thread.java:833)
>>
>> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>>> Hi Markus,
>>>
>>> I see corresponding codes in Struts:
>>> if (devMode) {
>>> LOG.error("Could not find action or result: {}", uri, e);
>>> } else if (LOG.isWarnEnabled()) {
>>> LOG.warn("Could not find action or result: {}", uri, e);
>>> }
>>> so it seems you should also have the exception e stack trace logged.
>>> Could you please share it as well? I guess you might affected by [1]
>>> but honestly hard to say how. So the stack trace could help a lot.
>>>
>>> Regards,
>>> Yasser
>>>
>>> [1]
>>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>>
>>>
>>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>>> requests....
>>>>
>>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>>> After removing commons-digester3-3.2 and leaving
>>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>>> production:
>>>>>
>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>>
>>>>> Seems to be a new issue in Struts6 and not really related to
>>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>>> straightforward. I just see the error in the log. Calling the path
>>>>> directly does not cause the issue. May there be a connection with
>>>>> a not present session?
>>>>>
>>>>> Markus
>>>>>
>>>>>
>>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>>> Removing commons-digester-2.1 gives:
>>>>>>
>>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>>
>>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>>> start.
>>>>>>
>>>>>> I will replace the application in production and check, if the
>>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>>> disappear.
>>>>>>
>>>>>> Regards
>>>>>> Markus
>>>>>>
>>>>>>
>>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>>
>>>>>>> Regards
>>>>>>> Łukasz
>>>>>>>
>>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>>> hmm, in production I see from time to time:
>>>>>>>>
>>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>>> action or
>>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>>
>>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>>
>>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>>> <param name="actionName">otherpath</param>
>>>>>>>> <param name="url">${url}</param>
>>>>>>>> </result>
>>>>>>>>
>>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>>> consistently, but
>>>>>>>> there seems to be thrown an error in
>>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>>> these lines:
>>>>>>>>
>>>>>>>>
>>>>>>>> try {
>>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>>> String actionName = mapping.getName();
>>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>>
>>>>>>>> LOG.trace("Processing action, namespace: {},
>>>>>>>> name: {},
>>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>>
>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>> proxy.getInvocation().getStack());
>>>>>>>>
>>>>>>>> // if the ActionMapping says to go straight to a
>>>>>>>> result, do it!
>>>>>>>> if (mapping.getResult() != null) {
>>>>>>>> Result result = mapping.getResult();
>>>>>>>> result.execute(proxy.getInvocation());
>>>>>>>> } else {
>>>>>>>> proxy.execute();
>>>>>>>> }
>>>>>>>>
>>>>>>>> // If there was a previous value stack then set
>>>>>>>> it back
>>>>>>>> onto the request
>>>>>>>> if (!nullStack) {
>>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>>> stack);
>>>>>>>> }
>>>>>>>> } catch (ConfigurationException e) {
>>>>>>>> logConfigurationException(request, e);
>>>>>>>> sendError(request, response,
>>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>>> }
>>>>>>>>
>>>>>>>>
>>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>>
>>>>>>>> commons-digester-2.1
>>>>>>>> commons-digester3-3.2
>>>>>>>>
>>>>>>>> Any idea, what is causing this warning, which seems to be
>>>>>>>> rather an error?
>>>>>>>>
>>>>>>>> Best Markus
>>>>>>>>
>>>>>>>>
>>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>>
>>>>>>>>> Best regards
>>>>>>>>> Markus
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>> This is the first patch version of Struts 6.x series. Please
>>>>>>>>>> take the
>>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>>> report any
>>>>>>>>>> problems you will spot.
>>>>>>>>>>
>>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>>
>>>>>>>>>> Staging Maven repo
>>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>>
>>>>>>>>>> Standalone artifacts
>>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>>
>>>>>>>>>> Release notes
>>>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Kind regards
>>>>>>>>>> --
>>>>>>>>>> Łukasz
>>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Yasser Zamani <ya...@apache.org>.
Thanks. I see "...and result 403..." so looks like the underlying action
has responded with 403 i.e. forbidden and you haven't defined such
result for this action in struts.xml? wdyt?
On 8/29/2022 8:32 PM, info@flyingfischer.ch wrote:
> Hi Yasser
> sure.
>
> Regards
> Markus
>
>
> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher -
> Could not find action or result: /context/mypath?url=urlEncodedUrl
> No result defined for action ch.xx.xx.xx and result 403 - action -
> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
>
> at
> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
>
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
>
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
>
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
>
> at
> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
>
> at
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
> at
> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
>
> at
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
>
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
>
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
>
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
>
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>
> at
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
>
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
>
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
> at
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
> at
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
>
> at
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
>
> at
> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
>
> at
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>
> at
> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
>
> at
> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
>
> at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>
> at java.base/java.lang.Thread.run(Thread.java:833)
>
> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>> Hi Markus,
>>
>> I see corresponding codes in Struts:
>> if (devMode) {
>> LOG.error("Could not find action or result: {}", uri, e);
>> } else if (LOG.isWarnEnabled()) {
>> LOG.warn("Could not find action or result: {}", uri, e);
>> }
>> so it seems you should also have the exception e stack trace logged.
>> Could you please share it as well? I guess you might affected by [1]
>> but honestly hard to say how. So the stack trace could help a lot.
>>
>> Regards,
>> Yasser
>>
>> [1]
>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>
>>
>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>> requests....
>>>
>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>> After removing commons-digester3-3.2 and leaving
>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>> production:
>>>>
>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>
>>>> Seems to be a new issue in Struts6 and not really related to
>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>> straightforward. I just see the error in the log. Calling the path
>>>> directly does not cause the issue. May there be a connection with a
>>>> not present session?
>>>>
>>>> Markus
>>>>
>>>>
>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>> Removing commons-digester-2.1 gives:
>>>>>
>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>
>>>>> I am able to remove commons-digester3-3.2: the application does start.
>>>>>
>>>>> I will replace the application in production and check, if the
>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>> disappear.
>>>>>
>>>>> Regards
>>>>> Markus
>>>>>
>>>>>
>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>
>>>>>> Regards
>>>>>> Łukasz
>>>>>>
>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>> hmm, in production I see from time to time:
>>>>>>>
>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>> action or
>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>
>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>
>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>> <param name="actionName">otherpath</param>
>>>>>>> <param name="url">${url}</param>
>>>>>>> </result>
>>>>>>>
>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>> consistently, but
>>>>>>> there seems to be thrown an error in
>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these
>>>>>>> lines:
>>>>>>>
>>>>>>>
>>>>>>> try {
>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>> String actionName = mapping.getName();
>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>
>>>>>>> LOG.trace("Processing action, namespace: {}, name: {},
>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>
>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>> proxy.getInvocation().getStack());
>>>>>>>
>>>>>>> // if the ActionMapping says to go straight to a
>>>>>>> result, do it!
>>>>>>> if (mapping.getResult() != null) {
>>>>>>> Result result = mapping.getResult();
>>>>>>> result.execute(proxy.getInvocation());
>>>>>>> } else {
>>>>>>> proxy.execute();
>>>>>>> }
>>>>>>>
>>>>>>> // If there was a previous value stack then set it
>>>>>>> back
>>>>>>> onto the request
>>>>>>> if (!nullStack) {
>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>> stack);
>>>>>>> }
>>>>>>> } catch (ConfigurationException e) {
>>>>>>> logConfigurationException(request, e);
>>>>>>> sendError(request, response,
>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>
>>>>>>> commons-digester-2.1
>>>>>>> commons-digester3-3.2
>>>>>>>
>>>>>>> Any idea, what is causing this warning, which seems to be rather
>>>>>>> an error?
>>>>>>>
>>>>>>> Best Markus
>>>>>>>
>>>>>>>
>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>
>>>>>>>> Best regards
>>>>>>>> Markus
>>>>>>>>
>>>>>>>>
>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> This is the first patch version of Struts 6.x series. Please
>>>>>>>>> take the
>>>>>>>>> time and test the bits - any help is appreciated. Please report
>>>>>>>>> any
>>>>>>>>> problems you will spot.
>>>>>>>>>
>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>
>>>>>>>>> Staging Maven repo
>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>
>>>>>>>>> Standalone artifacts
>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>
>>>>>>>>> Release notes
>>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Kind regards
>>>>>>>>> --
>>>>>>>>> Łukasz
>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Indeed I use
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
Regards
Markus
Am 30.08.22 um 14:39 schrieb Lukasz Lenart:
> Do you use the proper Servlet 3.1 headers in web.xml?
>
> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
> http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
> version="3.1">
>
>
> Regards
> Łukasz
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
Do you use the proper Servlet 3.1 headers in web.xml?
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
Regards
Łukasz
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
The corresponding request is
OPTIONS /context/mypath?url=urlEncodedUrl HTTP/1.1" 404
The same request as GET or POST will work fine. OPTIONS and HEAD
requests crash.
Regards
Markus
Am 29.08.22 um 18:02 schrieb info@flyingfischer.ch:
> Hi Yasser
> sure.
>
> Regards
> Markus
>
>
> 29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher -
> Could not find action or result: /context/mypath?url=urlEncodedUrl
> No result defined for action ch.xx.xx.xx and result 403 - action -
> file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
>
> at
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
> at
> org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
> at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
> at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
> at
> org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
> at
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
> at
> org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
> at
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
> at
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
> at
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
> at
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
> at
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
> at
> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
> at
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
> at
> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
> at
> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
> at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> at java.base/java.lang.Thread.run(Thread.java:833)
>
> Am 29.08.22 um 17:39 schrieb Yasser Zamani:
>> Hi Markus,
>>
>> I see corresponding codes in Struts:
>> if (devMode) {
>> LOG.error("Could not find action or result: {}", uri, e);
>> } else if (LOG.isWarnEnabled()) {
>> LOG.warn("Could not find action or result: {}", uri, e);
>> }
>> so it seems you should also have the exception e stack trace logged.
>> Could you please share it as well? I guess you might affected by [1]
>> but honestly hard to say how. So the stack trace could help a lot.
>>
>> Regards,
>> Yasser
>>
>> [1]
>> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>>
>> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>>> If I see this correctly, this happens only with OPTIONS and HEAD
>>> requests....
>>>
>>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>>> After removing commons-digester3-3.2 and leaving
>>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>>> production:
>>>>
>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>> action or result: /context/mypath?url=urlEncodedUrl
>>>>
>>>> Seems to be a new issue in Struts6 and not really related to
>>>> commons-digester? Unfortunately I cannot reproduce the issue
>>>> straightforward. I just see the error in the log. Calling the path
>>>> directly does not cause the issue. May there be a connection with a
>>>> not present session?
>>>>
>>>> Markus
>>>>
>>>>
>>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>>> Removing commons-digester-2.1 gives:
>>>>>
>>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>>
>>>>> I am able to remove commons-digester3-3.2: the application does
>>>>> start.
>>>>>
>>>>> I will replace the application in production and check, if the
>>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>>> disappear.
>>>>>
>>>>> Regards
>>>>> Markus
>>>>>
>>>>>
>>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>>
>>>>>> Regards
>>>>>> Łukasz
>>>>>>
>>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>>> hmm, in production I see from time to time:
>>>>>>>
>>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>>> action or
>>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>>
>>>>>>> The action exists and the result also, as redirectAction
>>>>>>>
>>>>>>> <result name="resultName" type="redirectAction">
>>>>>>> <param name="actionName">otherpath</param>
>>>>>>> <param name="url">${url}</param>
>>>>>>> </result>
>>>>>>>
>>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>>> consistently, but
>>>>>>> there seems to be thrown an error in
>>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between
>>>>>>> these lines:
>>>>>>>
>>>>>>>
>>>>>>> try {
>>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>>> String actionName = mapping.getName();
>>>>>>> String actionMethod = mapping.getMethod();
>>>>>>>
>>>>>>> LOG.trace("Processing action, namespace: {}, name:
>>>>>>> {},
>>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>>
>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>> proxy.getInvocation().getStack());
>>>>>>>
>>>>>>> // if the ActionMapping says to go straight to a
>>>>>>> result, do it!
>>>>>>> if (mapping.getResult() != null) {
>>>>>>> Result result = mapping.getResult();
>>>>>>> result.execute(proxy.getInvocation());
>>>>>>> } else {
>>>>>>> proxy.execute();
>>>>>>> }
>>>>>>>
>>>>>>> // If there was a previous value stack then set it
>>>>>>> back
>>>>>>> onto the request
>>>>>>> if (!nullStack) {
>>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>>> stack);
>>>>>>> }
>>>>>>> } catch (ConfigurationException e) {
>>>>>>> logConfigurationException(request, e);
>>>>>>> sendError(request, response,
>>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>> The artifacts contains two version of commons-digester:
>>>>>>>
>>>>>>> commons-digester-2.1
>>>>>>> commons-digester3-3.2
>>>>>>>
>>>>>>> Any idea, what is causing this warning, which seems to be rather
>>>>>>> an error?
>>>>>>>
>>>>>>> Best Markus
>>>>>>>
>>>>>>>
>>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>>
>>>>>>>> Best regards
>>>>>>>> Markus
>>>>>>>>
>>>>>>>>
>>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> This is the first patch version of Struts 6.x series. Please
>>>>>>>>> take the
>>>>>>>>> time and test the bits - any help is appreciated. Please
>>>>>>>>> report any
>>>>>>>>> problems you will spot.
>>>>>>>>>
>>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>>
>>>>>>>>> Staging Maven repo
>>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>>
>>>>>>>>> Standalone artifacts
>>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>>
>>>>>>>>> Release notes
>>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Kind regards
>>>>>>>>> --
>>>>>>>>> Łukasz
>>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Hi Yasser
sure.
Regards
Markus
29-08-2022 16:12:47.8 WARN org.apache.struts2.dispatcher.Dispatcher -
Could not find action or result: /context/mypath?url=urlEncodedUrl
No result defined for action ch.xx.xx.xx and result 403 - action -
file:/xx/xx/xx/apache-tomcat-8.5.81/webapps/context/WEB-INF/classes/struts.xml:223:65
at
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
at
org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:146)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:202)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:67)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:133)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:89)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:242)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:101)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:142)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:161)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:175)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.csp.CspInterceptor.intercept(CspInterceptor.java:46)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:209)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:229)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:196)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
util.CachingHeadersInterceptor.intercept(CachingHeadersInterceptor.java:28)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
com.googlecode.sslplugin.interceptors.SSLInterceptor.intercept(SSLInterceptor.java:128)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at util.HostwwwInterceptor.intercept(HostwwwInterceptor.java:37)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
at
org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48)
at
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:630)
at
org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79)
at
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
at
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
at
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2078)
at
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:833)
Am 29.08.22 um 17:39 schrieb Yasser Zamani:
> Hi Markus,
>
> I see corresponding codes in Struts:
> if (devMode) {
> LOG.error("Could not find action or result: {}", uri, e);
> } else if (LOG.isWarnEnabled()) {
> LOG.warn("Could not find action or result: {}", uri, e);
> }
> so it seems you should also have the exception e stack trace logged.
> Could you please share it as well? I guess you might affected by [1]
> but honestly hard to say how. So the stack trace could help a lot.
>
> Regards,
> Yasser
>
> [1]
> https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
>
> On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
>> If I see this correctly, this happens only with OPTIONS and HEAD
>> requests....
>>
>> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>>> After removing commons-digester3-3.2 and leaving
>>> commons-digester-2.1 only, I still get the Warnings/Errors in
>>> production:
>>>
>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>> action or result: /context/mypath?url=urlEncodedUrl
>>>
>>> Seems to be a new issue in Struts6 and not really related to
>>> commons-digester? Unfortunately I cannot reproduce the issue
>>> straightforward. I just see the error in the log. Calling the path
>>> directly does not cause the issue. May there be a connection with a
>>> not present session?
>>>
>>> Markus
>>>
>>>
>>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>>> Removing commons-digester-2.1 gives:
>>>>
>>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>>
>>>> I am able to remove commons-digester3-3.2: the application does start.
>>>>
>>>> I will replace the application in production and check, if the
>>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher
>>>> disappear.
>>>>
>>>> Regards
>>>> Markus
>>>>
>>>>
>>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>>
>>>>> Regards
>>>>> Łukasz
>>>>>
>>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>>> <in...@flyingfischer.ch> napisał(a):
>>>>>> hmm, in production I see from time to time:
>>>>>>
>>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>>> action or
>>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>>
>>>>>> The action exists and the result also, as redirectAction
>>>>>>
>>>>>> <result name="resultName" type="redirectAction">
>>>>>> <param name="actionName">otherpath</param>
>>>>>> <param name="url">${url}</param>
>>>>>> </result>
>>>>>>
>>>>>> This behaviour seems to be new. I cannot reproduce it
>>>>>> consistently, but
>>>>>> there seems to be thrown an error in
>>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these
>>>>>> lines:
>>>>>>
>>>>>>
>>>>>> try {
>>>>>> String actionNamespace = mapping.getNamespace();
>>>>>> String actionName = mapping.getName();
>>>>>> String actionMethod = mapping.getMethod();
>>>>>>
>>>>>> LOG.trace("Processing action, namespace: {}, name: {},
>>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>>>> actionNamespace, actionName, actionMethod);
>>>>>>
>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>> proxy.getInvocation().getStack());
>>>>>>
>>>>>> // if the ActionMapping says to go straight to a
>>>>>> result, do it!
>>>>>> if (mapping.getResult() != null) {
>>>>>> Result result = mapping.getResult();
>>>>>> result.execute(proxy.getInvocation());
>>>>>> } else {
>>>>>> proxy.execute();
>>>>>> }
>>>>>>
>>>>>> // If there was a previous value stack then set it
>>>>>> back
>>>>>> onto the request
>>>>>> if (!nullStack) {
>>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>>> stack);
>>>>>> }
>>>>>> } catch (ConfigurationException e) {
>>>>>> logConfigurationException(request, e);
>>>>>> sendError(request, response,
>>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>>> }
>>>>>>
>>>>>>
>>>>>> The artifacts contains two version of commons-digester:
>>>>>>
>>>>>> commons-digester-2.1
>>>>>> commons-digester3-3.2
>>>>>>
>>>>>> Any idea, what is causing this warning, which seems to be rather
>>>>>> an error?
>>>>>>
>>>>>> Best Markus
>>>>>>
>>>>>>
>>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>>
>>>>>>> Best regards
>>>>>>> Markus
>>>>>>>
>>>>>>>
>>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> This is the first patch version of Struts 6.x series. Please
>>>>>>>> take the
>>>>>>>> time and test the bits - any help is appreciated. Please report
>>>>>>>> any
>>>>>>>> problems you will spot.
>>>>>>>>
>>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>>
>>>>>>>> Staging Maven repo
>>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>>
>>>>>>>> Standalone artifacts
>>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>>
>>>>>>>> Release notes
>>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>>
>>>>>>>>
>>>>>>>> Kind regards
>>>>>>>> --
>>>>>>>> Łukasz
>>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Yasser Zamani <ya...@apache.org>.
Hi Markus,
I see corresponding codes in Struts:
if (devMode) {
LOG.error("Could not find action or result: {}", uri, e);
} else if (LOG.isWarnEnabled()) {
LOG.warn("Could not find action or result: {}", uri, e);
}
so it seems you should also have the exception e stack trace logged.
Could you please share it as well? I guess you might affected by [1] but
honestly hard to say how. So the stack trace could help a lot.
Regards,
Yasser
[1]
https://github.com/apache/struts/commit/1c2b491a27b48a0b064b991a6cef63db5e6cb28b
On 8/29/2022 5:22 PM, info@flyingfischer.ch wrote:
> If I see this correctly, this happens only with OPTIONS and HEAD
> requests....
>
> Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
>> After removing commons-digester3-3.2 and leaving commons-digester-2.1
>> only, I still get the Warnings/Errors in production:
>>
>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action
>> or result: /context/mypath?url=urlEncodedUrl
>>
>> Seems to be a new issue in Struts6 and not really related to
>> commons-digester? Unfortunately I cannot reproduce the issue
>> straightforward. I just see the error in the log. Calling the path
>> directly does not cause the issue. May there be a connection with a
>> not present session?
>>
>> Markus
>>
>>
>> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>>> Removing commons-digester-2.1 gives:
>>>
>>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>>
>>> I am able to remove commons-digester3-3.2: the application does start.
>>>
>>> I will replace the application in production and check, if the
>>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher disappear.
>>>
>>> Regards
>>> Markus
>>>
>>>
>>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>>> Could you exclude commons-digester in the Tiles plugin?
>>>>
>>>> Regards
>>>> Łukasz
>>>>
>>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>>> <in...@flyingfischer.ch> napisał(a):
>>>>> hmm, in production I see from time to time:
>>>>>
>>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>>> action or
>>>>> result: /context/mypath?url=urlEncodedUrl
>>>>>
>>>>> The action exists and the result also, as redirectAction
>>>>>
>>>>> <result name="resultName" type="redirectAction">
>>>>> <param name="actionName">otherpath</param>
>>>>> <param name="url">${url}</param>
>>>>> </result>
>>>>>
>>>>> This behaviour seems to be new. I cannot reproduce it consistently,
>>>>> but
>>>>> there seems to be thrown an error in
>>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these
>>>>> lines:
>>>>>
>>>>>
>>>>> try {
>>>>> String actionNamespace = mapping.getNamespace();
>>>>> String actionName = mapping.getName();
>>>>> String actionMethod = mapping.getMethod();
>>>>>
>>>>> LOG.trace("Processing action, namespace: {}, name: {},
>>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>>> actionNamespace, actionName, actionMethod);
>>>>>
>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>> proxy.getInvocation().getStack());
>>>>>
>>>>> // if the ActionMapping says to go straight to a
>>>>> result, do it!
>>>>> if (mapping.getResult() != null) {
>>>>> Result result = mapping.getResult();
>>>>> result.execute(proxy.getInvocation());
>>>>> } else {
>>>>> proxy.execute();
>>>>> }
>>>>>
>>>>> // If there was a previous value stack then set it back
>>>>> onto the request
>>>>> if (!nullStack) {
>>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>>> stack);
>>>>> }
>>>>> } catch (ConfigurationException e) {
>>>>> logConfigurationException(request, e);
>>>>> sendError(request, response,
>>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>>> }
>>>>>
>>>>>
>>>>> The artifacts contains two version of commons-digester:
>>>>>
>>>>> commons-digester-2.1
>>>>> commons-digester3-3.2
>>>>>
>>>>> Any idea, what is causing this warning, which seems to be rather an
>>>>> error?
>>>>>
>>>>> Best Markus
>>>>>
>>>>>
>>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>>> Works fine here. Tested with tiles-plugin.
>>>>>>
>>>>>> Best regards
>>>>>> Markus
>>>>>>
>>>>>>
>>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>>> Hello,
>>>>>>>
>>>>>>> This is the first patch version of Struts 6.x series. Please take
>>>>>>> the
>>>>>>> time and test the bits - any help is appreciated. Please report any
>>>>>>> problems you will spot.
>>>>>>>
>>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>>
>>>>>>> Staging Maven repo
>>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>>
>>>>>>> Standalone artifacts
>>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>>
>>>>>>> Release notes
>>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>>
>>>>>>>
>>>>>>> Kind regards
>>>>>>> --
>>>>>>> Łukasz
>>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
If I see this correctly, this happens only with OPTIONS and HEAD
requests....
Am 29.08.22 um 14:09 schrieb info@flyingfischer.ch:
> After removing commons-digester3-3.2 and leaving commons-digester-2.1
> only, I still get the Warnings/Errors in production:
>
> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action
> or result: /context/mypath?url=urlEncodedUrl
>
> Seems to be a new issue in Struts6 and not really related to
> commons-digester? Unfortunately I cannot reproduce the issue
> straightforward. I just see the error in the log. Calling the path
> directly does not cause the issue. May there be a connection with a
> not present session?
>
> Markus
>
>
> Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
>> Removing commons-digester-2.1 gives:
>>
>> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>>
>> I am able to remove commons-digester3-3.2: the application does start.
>>
>> I will replace the application in production and check, if the
>> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher disappear.
>>
>> Regards
>> Markus
>>
>>
>> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>>> Could you exclude commons-digester in the Tiles plugin?
>>>
>>> Regards
>>> Łukasz
>>>
>>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>>> <in...@flyingfischer.ch> napisał(a):
>>>> hmm, in production I see from time to time:
>>>>
>>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>>> action or
>>>> result: /context/mypath?url=urlEncodedUrl
>>>>
>>>> The action exists and the result also, as redirectAction
>>>>
>>>> <result name="resultName" type="redirectAction">
>>>> <param name="actionName">otherpath</param>
>>>> <param name="url">${url}</param>
>>>> </result>
>>>>
>>>> This behaviour seems to be new. I cannot reproduce it consistently,
>>>> but
>>>> there seems to be thrown an error in
>>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these
>>>> lines:
>>>>
>>>>
>>>> try {
>>>> String actionNamespace = mapping.getNamespace();
>>>> String actionName = mapping.getName();
>>>> String actionMethod = mapping.getMethod();
>>>>
>>>> LOG.trace("Processing action, namespace: {}, name: {},
>>>> method: {}", actionNamespace, actionName, actionMethod);
>>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>>> actionNamespace, actionName, actionMethod);
>>>>
>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>> proxy.getInvocation().getStack());
>>>>
>>>> // if the ActionMapping says to go straight to a
>>>> result, do it!
>>>> if (mapping.getResult() != null) {
>>>> Result result = mapping.getResult();
>>>> result.execute(proxy.getInvocation());
>>>> } else {
>>>> proxy.execute();
>>>> }
>>>>
>>>> // If there was a previous value stack then set it back
>>>> onto the request
>>>> if (!nullStack) {
>>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>>> stack);
>>>> }
>>>> } catch (ConfigurationException e) {
>>>> logConfigurationException(request, e);
>>>> sendError(request, response,
>>>> HttpServletResponse.SC_NOT_FOUND, e);
>>>> }
>>>>
>>>>
>>>> The artifacts contains two version of commons-digester:
>>>>
>>>> commons-digester-2.1
>>>> commons-digester3-3.2
>>>>
>>>> Any idea, what is causing this warning, which seems to be rather an
>>>> error?
>>>>
>>>> Best Markus
>>>>
>>>>
>>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>>> Works fine here. Tested with tiles-plugin.
>>>>>
>>>>> Best regards
>>>>> Markus
>>>>>
>>>>>
>>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>>> Hello,
>>>>>>
>>>>>> This is the first patch version of Struts 6.x series. Please take
>>>>>> the
>>>>>> time and test the bits - any help is appreciated. Please report any
>>>>>> problems you will spot.
>>>>>>
>>>>>> Here are the changes from the previous 6.0.0 version:
>>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>>
>>>>>> Staging Maven repo
>>>>>> https://repository.apache.org/content/groups/staging/
>>>>>>
>>>>>> Standalone artifacts
>>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>>
>>>>>> Release notes
>>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>>
>>>>>>
>>>>>> Kind regards
>>>>>> --
>>>>>> Łukasz
>>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>>
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
After removing commons-digester3-3.2 and leaving commons-digester-2.1
only, I still get the Warnings/Errors in production:
WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action or
result: /context/mypath?url=urlEncodedUrl
Seems to be a new issue in Struts6 and not really related to
commons-digester? Unfortunately I cannot reproduce the issue
straightforward. I just see the error in the log. Calling the path
directly does not cause the issue. May there be a connection with a not
present session?
Markus
Am 29.08.22 um 11:36 schrieb info@flyingfischer.ch:
> Removing commons-digester-2.1 gives:
>
> java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
>
> I am able to remove commons-digester3-3.2: the application does start.
>
> I will replace the application in production and check, if the
> Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher disappear.
>
> Regards
> Markus
>
>
> Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
>> Could you exclude commons-digester in the Tiles plugin?
>>
>> Regards
>> Łukasz
>>
>> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
>> <in...@flyingfischer.ch> napisał(a):
>>> hmm, in production I see from time to time:
>>>
>>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find
>>> action or
>>> result: /context/mypath?url=urlEncodedUrl
>>>
>>> The action exists and the result also, as redirectAction
>>>
>>> <result name="resultName" type="redirectAction">
>>> <param name="actionName">otherpath</param>
>>> <param name="url">${url}</param>
>>> </result>
>>>
>>> This behaviour seems to be new. I cannot reproduce it consistently, but
>>> there seems to be thrown an error in
>>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these
>>> lines:
>>>
>>>
>>> try {
>>> String actionNamespace = mapping.getNamespace();
>>> String actionName = mapping.getName();
>>> String actionMethod = mapping.getMethod();
>>>
>>> LOG.trace("Processing action, namespace: {}, name: {},
>>> method: {}", actionNamespace, actionName, actionMethod);
>>> ActionProxy proxy = prepareActionProxy(extraContext,
>>> actionNamespace, actionName, actionMethod);
>>>
>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>> proxy.getInvocation().getStack());
>>>
>>> // if the ActionMapping says to go straight to a
>>> result, do it!
>>> if (mapping.getResult() != null) {
>>> Result result = mapping.getResult();
>>> result.execute(proxy.getInvocation());
>>> } else {
>>> proxy.execute();
>>> }
>>>
>>> // If there was a previous value stack then set it back
>>> onto the request
>>> if (!nullStack) {
>>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>>> stack);
>>> }
>>> } catch (ConfigurationException e) {
>>> logConfigurationException(request, e);
>>> sendError(request, response,
>>> HttpServletResponse.SC_NOT_FOUND, e);
>>> }
>>>
>>>
>>> The artifacts contains two version of commons-digester:
>>>
>>> commons-digester-2.1
>>> commons-digester3-3.2
>>>
>>> Any idea, what is causing this warning, which seems to be rather an
>>> error?
>>>
>>> Best Markus
>>>
>>>
>>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>>> Works fine here. Tested with tiles-plugin.
>>>>
>>>> Best regards
>>>> Markus
>>>>
>>>>
>>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>>> Hello,
>>>>>
>>>>> This is the first patch version of Struts 6.x series. Please take the
>>>>> time and test the bits - any help is appreciated. Please report any
>>>>> problems you will spot.
>>>>>
>>>>> Here are the changes from the previous 6.0.0 version:
>>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>>
>>>>> Staging Maven repo
>>>>> https://repository.apache.org/content/groups/staging/
>>>>>
>>>>> Standalone artifacts
>>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>>
>>>>> Release notes
>>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>>
>>>>>
>>>>> Kind regards
>>>>> --
>>>>> Łukasz
>>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Removing commons-digester-2.1 gives:
java.lang.NoClassDefFoundError: org/apache/commons/digester/Rule
I am able to remove commons-digester3-3.2: the application does start.
I will replace the application in production and check, if the
Warnings/Errors from org.apache.struts2.dispatcher.Dispatcher disappear.
Regards
Markus
Am 29.08.22 um 10:19 schrieb Lukasz Lenart:
> Could you exclude commons-digester in the Tiles plugin?
>
> Regards
> Łukasz
>
> pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
> <in...@flyingfischer.ch> napisał(a):
>> hmm, in production I see from time to time:
>>
>> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action or
>> result: /context/mypath?url=urlEncodedUrl
>>
>> The action exists and the result also, as redirectAction
>>
>> <result name="resultName" type="redirectAction">
>> <param name="actionName">otherpath</param>
>> <param name="url">${url}</param>
>> </result>
>>
>> This behaviour seems to be new. I cannot reproduce it consistently, but
>> there seems to be thrown an error in
>> org.apache.struts2.dispatcher.Dispatcher, somewhere between these lines:
>>
>>
>> try {
>> String actionNamespace = mapping.getNamespace();
>> String actionName = mapping.getName();
>> String actionMethod = mapping.getMethod();
>>
>> LOG.trace("Processing action, namespace: {}, name: {},
>> method: {}", actionNamespace, actionName, actionMethod);
>> ActionProxy proxy = prepareActionProxy(extraContext,
>> actionNamespace, actionName, actionMethod);
>>
>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
>> proxy.getInvocation().getStack());
>>
>> // if the ActionMapping says to go straight to a result, do it!
>> if (mapping.getResult() != null) {
>> Result result = mapping.getResult();
>> result.execute(proxy.getInvocation());
>> } else {
>> proxy.execute();
>> }
>>
>> // If there was a previous value stack then set it back
>> onto the request
>> if (!nullStack) {
>> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, stack);
>> }
>> } catch (ConfigurationException e) {
>> logConfigurationException(request, e);
>> sendError(request, response,
>> HttpServletResponse.SC_NOT_FOUND, e);
>> }
>>
>>
>> The artifacts contains two version of commons-digester:
>>
>> commons-digester-2.1
>> commons-digester3-3.2
>>
>> Any idea, what is causing this warning, which seems to be rather an error?
>>
>> Best Markus
>>
>>
>> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
>>> Works fine here. Tested with tiles-plugin.
>>>
>>> Best regards
>>> Markus
>>>
>>>
>>> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>>>> Hello,
>>>>
>>>> This is the first patch version of Struts 6.x series. Please take the
>>>> time and test the bits - any help is appreciated. Please report any
>>>> problems you will spot.
>>>>
>>>> Here are the changes from the previous 6.0.0 version:
>>>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>>>
>>>> Staging Maven repo
>>>> https://repository.apache.org/content/groups/staging/
>>>>
>>>> Standalone artifacts
>>>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>>>
>>>> Release notes
>>>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>>>
>>>>
>>>> Kind regards
>>>> --
>>>> Łukasz
>>>> + 48 606 323 122 http://www.lenart.org.pl/
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>>> For additional commands, e-mail: dev-help@struts.apache.org
>>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by Lukasz Lenart <lu...@apache.org>.
Could you exclude commons-digester in the Tiles plugin?
Regards
Łukasz
pon., 29 sie 2022 o 10:11 info@flyingfischer.ch
<in...@flyingfischer.ch> napisał(a):
>
> hmm, in production I see from time to time:
>
> WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action or
> result: /context/mypath?url=urlEncodedUrl
>
> The action exists and the result also, as redirectAction
>
> <result name="resultName" type="redirectAction">
> <param name="actionName">otherpath</param>
> <param name="url">${url}</param>
> </result>
>
> This behaviour seems to be new. I cannot reproduce it consistently, but
> there seems to be thrown an error in
> org.apache.struts2.dispatcher.Dispatcher, somewhere between these lines:
>
>
> try {
> String actionNamespace = mapping.getNamespace();
> String actionName = mapping.getName();
> String actionMethod = mapping.getMethod();
>
> LOG.trace("Processing action, namespace: {}, name: {},
> method: {}", actionNamespace, actionName, actionMethod);
> ActionProxy proxy = prepareActionProxy(extraContext,
> actionNamespace, actionName, actionMethod);
>
> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
> proxy.getInvocation().getStack());
>
> // if the ActionMapping says to go straight to a result, do it!
> if (mapping.getResult() != null) {
> Result result = mapping.getResult();
> result.execute(proxy.getInvocation());
> } else {
> proxy.execute();
> }
>
> // If there was a previous value stack then set it back
> onto the request
> if (!nullStack) {
> request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, stack);
> }
> } catch (ConfigurationException e) {
> logConfigurationException(request, e);
> sendError(request, response,
> HttpServletResponse.SC_NOT_FOUND, e);
> }
>
>
> The artifacts contains two version of commons-digester:
>
> commons-digester-2.1
> commons-digester3-3.2
>
> Any idea, what is causing this warning, which seems to be rather an error?
>
> Best Markus
>
>
> Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
> > Works fine here. Tested with tiles-plugin.
> >
> > Best regards
> > Markus
> >
> >
> > Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
> >> Hello,
> >>
> >> This is the first patch version of Struts 6.x series. Please take the
> >> time and test the bits - any help is appreciated. Please report any
> >> problems you will spot.
> >>
> >> Here are the changes from the previous 6.0.0 version:
> >> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
> >>
> >> Staging Maven repo
> >> https://repository.apache.org/content/groups/staging/
> >>
> >> Standalone artifacts
> >> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
> >>
> >> Release notes
> >> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
> >>
> >>
> >> Kind regards
> >> --
> >> Łukasz
> >> + 48 606 323 122 http://www.lenart.org.pl/
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: dev-help@struts.apache.org
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > For additional commands, e-mail: dev-help@struts.apache.org
> >
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
hmm, in production I see from time to time:
WARN org.apache.struts2.dispatcher.Dispatcher - Could not find action or
result: /context/mypath?url=urlEncodedUrl
The action exists and the result also, as redirectAction
<result name="resultName" type="redirectAction">
<param name="actionName">otherpath</param>
<param name="url">${url}</param>
</result>
This behaviour seems to be new. I cannot reproduce it consistently, but
there seems to be thrown an error in
org.apache.struts2.dispatcher.Dispatcher, somewhere between these lines:
try {
String actionNamespace = mapping.getNamespace();
String actionName = mapping.getName();
String actionMethod = mapping.getMethod();
LOG.trace("Processing action, namespace: {}, name: {},
method: {}", actionNamespace, actionName, actionMethod);
ActionProxy proxy = prepareActionProxy(extraContext,
actionNamespace, actionName, actionMethod);
request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY,
proxy.getInvocation().getStack());
// if the ActionMapping says to go straight to a result, do it!
if (mapping.getResult() != null) {
Result result = mapping.getResult();
result.execute(proxy.getInvocation());
} else {
proxy.execute();
}
// If there was a previous value stack then set it back
onto the request
if (!nullStack) {
request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, stack);
}
} catch (ConfigurationException e) {
logConfigurationException(request, e);
sendError(request, response,
HttpServletResponse.SC_NOT_FOUND, e);
}
The artifacts contains two version of commons-digester:
commons-digester-2.1
commons-digester3-3.2
Any idea, what is causing this warning, which seems to be rather an error?
Best Markus
Am 27.08.22 um 12:28 schrieb info@flyingfischer.ch:
> Works fine here. Tested with tiles-plugin.
>
> Best regards
> Markus
>
>
> Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
>> Hello,
>>
>> This is the first patch version of Struts 6.x series. Please take the
>> time and test the bits - any help is appreciated. Please report any
>> problems you will spot.
>>
>> Here are the changes from the previous 6.0.0 version:
>> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>>
>> Staging Maven repo
>> https://repository.apache.org/content/groups/staging/
>>
>> Standalone artifacts
>> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>>
>> Release notes
>> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>>
>>
>> Kind regards
>> --
>> Łukasz
>> + 48 606 323 122 http://www.lenart.org.pl/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
Re: [TEST] Struts 6.0.2 test build is ready
Posted by "info@flyingfischer.ch" <in...@flyingfischer.ch>.
Works fine here. Tested with tiles-plugin.
Best regards
Markus
Am 25.08.22 um 07:52 schrieb Lukasz Lenart:
> Hello,
>
> This is the first patch version of Struts 6.x series. Please take the
> time and test the bits - any help is appreciated. Please report any
> problems you will spot.
>
> Here are the changes from the previous 6.0.0 version:
> https://github.com/apache/struts/releases/tag/STRUTS_6_0_2
>
> Staging Maven repo
> https://repository.apache.org/content/groups/staging/
>
> Standalone artifacts
> https://dist.apache.org/repos/dist/dev/struts/6.0.2/
>
> Release notes
> https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.0.2
>
>
> Kind regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org