You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Peer Mohammad <pe...@gmail.com> on 2020/09/28 06:18:35 UTC

Issue in migration from struts2.3.35 to struts2.5.22

Hi Team,

I am getting error while migrating Struts2.3.35 to Struts2.5.22 as "There is no ActionContext for current request! - [unknown location]"
console log: ERROR StrutsTilesLocaleResolver cannot obtain HttpServletRequest from [org.apache.tiles.request.jsp.JspRequest].

The list of jars version for strust2.3.55:
struts2-core 2.3.35
freemarker -2.3.28
xwork-core -2.3.35
struts2-tiles-plugin 2.3.35
tiles-api 2.2.2
tiles-compat 3.0.8
tiles-core 2.2.2
tiles-jsp 2.2.2
tiles-servlet 2.2.2
ognl 3.0.21
commons-validator 1.3.1
commons-beanutils 1.8.0
------
list of jars for Strust2.5.22 

struts2-core 2.5.22
freemarker -2.3.30
xwork-core -2.3.37
struts2-tiles-plugin 2.5.22
tiles-api 3.0.8
tiles-compat 3.0.8
tiles-core 3.0.8
tiles-jsp 3.0.8
tiles-servlet 3.0.8
ognl 3.1.26
commons-validator 1.3.1
commons-beanutils 1.9.4

Kindly help me on this issue.
Thanks,
Peer Mohammad Ansari

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Peer Mohammad <pe...@gmail.com>.

On 2020/09/28 11:17:50, Lukasz Lenart <lu...@apache.org> wrote: 
> pon., 28 wrz 2020 o 12:35 Peer Mohammad <pe...@gmail.com> napisał(a):
> >
> > Hi Team,
> >
> > I am getting error while migrating Struts2.3.35 to Struts2.5.22 as "There is no ActionContext for current request! - [unknown location]"
> > console log: ERROR StrutsTilesLocaleResolver cannot obtain HttpServletRequest from [org.apache.tiles.request.jsp.JspRequest].
> 
> Did you follow the upgrade procedure?
> https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration#Struts2.3to2.5migration-Tiles
> 
> > list of jars for Strust2.5.22
> >
> > struts2-core 2.5.22
> > freemarker -2.3.30
> > xwork-core -2.3.37
> 
> You do not need XWork anymore, please remove the jar
> 
> 
> Regards
> -- 
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by James Chaplin <jc...@apache.org>.
Hello Peer.

I am not sure if any of these suggestions will help or not, but you never know.

There is a blog post (http://www.programmers-code.org/2017/10/23/struts-tiles-locale-resolver-cannot-obtain-httpservletrequest/) that mentions receiving similar errors due to request.getAttribute("x") calls within the JSPs.  You can check your application's JSPs to see if you have any similar direct calls, and try what the blog suggests (replace request with requestScope), to see if it makes any difference.

There is a commented-out Tiles 1-or-2 context-param entry in the application's web.xml from your earlier mailing list post.  It probably will not make a difference, but you could try explicitly setting the Tiles 3 equivalent:

<context-param>
    <param-name>org.apache.tiles.definition.DefinitionsFactory.DEFINITIONS_CONFIG</param-name>
    <param-value>/WEB-INF/tiles.xml</param-value>
</context-param>

in the application's web.xml and see if it makes any difference in the application's behaviour.

The error you are getting indicates that the StrutsTilesLocaleResolver for the Struts 2 Tiles Plugin cannot locate the ActionContext for the request.  That could mean that processing is somehow ending up at one of your JSPs without following the normal action execution path.  You might try increasing the log levels to DEBUG temporarily to see if that turns up any information that might help.

Another suggestion is that you could try temporarily changing your application's configuration to use the "defaultStack" interceptor stack (and then add any custom interceptors you need), to see if that makes any difference.  There maybe something subtle with the interceptors (or ordering) that is impacting processing, and the struts.xml from your earlier post has custom interceptor stacks, so going back to the basic defaults might help you debug further.

Regards,

James.


On 2020/11/01 11:05:43, Peer Mohammad <pe...@gmail.com> wrote: 
> I have not used Xwork, index.jsp has <tiles:inserDefinition name="cheetta.login" flush="true"/> and cheetta.login is given in struts.xml with action class.This setup is working last 7 years on struts2.3.35 .
> Note sure why its failing on upgraded version.I debugged and saw that Valustack returning null for the request.
> 
> Thanks & Regards,
> Peer M Ansari
> 
> On 2020/10/29 12:57:57, Lukasz Lenart <lu...@apache.org> wrote: 
> > czw., 29 paź 2020 o 11:24 Peer Mohammad <pe...@gmail.com> napisał(a):
> > > list of jars for Strust2.5.22
> > >
> > > struts2-core 2.5.22
> > > freemarker -2.3.30
> > > xwork-core -2.3.37
> > 
> > As I said, this is not needed, XWork was merged into Struts Core, you
> > are duplicating classes now
> > 
> > > Caused by: There is no ActionContext for current request! - [unknown location]
> > >
> > >     at org.apache.jsp.index_jsp._jspx_meth_tiles_005finsertDefinition_005f0(index_jsp.java:151)
> > 
> > You are accessing index.jsp directly by
> >         <welcome-file-list>
> >                 <welcome-file>index.jsp</welcome-file>
> >         </welcome-file-list>
> > 
> > 
> > Regards
> > -- 
> > Łukasz
> > + 48 606 323 122 http://www.lenart.org.pl/
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> > 
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Lukasz Lenart <lu...@apache.org>.
niedz., 1 lis 2020 o 14:25 Peer Mohammad <pe...@gmail.com> napisał(a):
>
> I have not used Xwork, index.jsp has <tiles:inserDefinition name="cheetta.login" flush="true"/> and cheetta.login is given in struts.xml with action class.This setup is working last 7 years on struts2.3.35 .

You are not using Xwork directly but you have xwork.jar on the
classpath, and some classes can conflict - remove the jar.

Next, you are accessing index.jsp directly and not via action - that's
why you are getting the exception. You are using Struts related Tiles
listener which expects that all the Tiles definitions (in this case
"cheetta.login") will be accessed via action. So the flow supposed to
be as follow:

browser -> action -> JSP -> Tiles definition

In your case there is no action when you're accessing index.jsp. If
you don't use any of the Struts Tile listener features you can switch
to "org.apache.tiles.listener.TilesListener" as pointed in the
documentation https://struts.apache.org/plugins/tiles/#usage

And yes, for the last 7 years we have been developing and extending
Struts that's why some things have changed.


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Peer Mohammad <pe...@gmail.com>.
I have not used Xwork, index.jsp has <tiles:inserDefinition name="cheetta.login" flush="true"/> and cheetta.login is given in struts.xml with action class.This setup is working last 7 years on struts2.3.35 .
Note sure why its failing on upgraded version.I debugged and saw that Valustack returning null for the request.

Thanks & Regards,
Peer M Ansari

On 2020/10/29 12:57:57, Lukasz Lenart <lu...@apache.org> wrote: 
> czw., 29 paź 2020 o 11:24 Peer Mohammad <pe...@gmail.com> napisał(a):
> > list of jars for Strust2.5.22
> >
> > struts2-core 2.5.22
> > freemarker -2.3.30
> > xwork-core -2.3.37
> 
> As I said, this is not needed, XWork was merged into Struts Core, you
> are duplicating classes now
> 
> > Caused by: There is no ActionContext for current request! - [unknown location]
> >
> >     at org.apache.jsp.index_jsp._jspx_meth_tiles_005finsertDefinition_005f0(index_jsp.java:151)
> 
> You are accessing index.jsp directly by
>         <welcome-file-list>
>                 <welcome-file>index.jsp</welcome-file>
>         </welcome-file-list>
> 
> 
> Regards
> -- 
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Lukasz Lenart <lu...@apache.org>.
czw., 29 paź 2020 o 11:24 Peer Mohammad <pe...@gmail.com> napisał(a):
> list of jars for Strust2.5.22
>
> struts2-core 2.5.22
> freemarker -2.3.30
> xwork-core -2.3.37

As I said, this is not needed, XWork was merged into Struts Core, you
are duplicating classes now

> Caused by: There is no ActionContext for current request! - [unknown location]
>
>     at org.apache.jsp.index_jsp._jspx_meth_tiles_005finsertDefinition_005f0(index_jsp.java:151)

You are accessing index.jsp directly by
        <welcome-file-list>
                <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Peer Mohammad <pe...@gmail.com>.
Hi,

I am using maven to control dependencies and i have doubt on struts2-tiles-plugin jar which has many new library class,not sure if something need to implement. I am using version in dtd in tiles.xml.

Please find the list of dependencies for struts2.3.35 (working fine) and struts2.5.22(upgrading)

The list of jars version for strust2.3.55:
struts2-core 2.3.35
freemarker -2.3.28
xwork-core -2.3.35
struts2-tiles-plugin 2.3.35
tiles-api 2.2.2
tiles-compat 3.0.8
tiles-core 2.2.2
tiles-jsp 2.2.2
tiles-servlet 2.2.2
ognl 3.0.21
commons-validator 1.3.1
commons-beanutils 1.8.0
taglibs-standard-1.2.5
asm-5.0.2
bsf-2.3.0
commons-fileupload-1.3.2
commons-lang3-3.1
commons-logging-1.1.3
commons-io-2.2
commons-chain-1.2
commons-digester-1.8

------
list of jars for Strust2.5.22 

struts2-core 2.5.22
freemarker -2.3.30
xwork-core -2.3.37
struts2-tiles-plugin 2.5.22
tiles-api 3.0.8
tiles-compat 3.0.8
tiles-core 3.0.8
tiles-jsp 3.0.8
tiles-servlet 3.0.8
ognl 3.1.26
commons-validator 1.3.1
commons-beanutils 1.9.4
taglibs-standard-1.2.5
asm-7.2
bsf-2.4
commons-fileupload-1.4
commons-lang3-3.8.1
commons-logging-1.2
commons-io-2.6
commons-chain-1.2
commons-digester-2.1

error:

Caused by: There is no ActionContext for current request! - [unknown location]

    at org.apache.struts2.tiles.StrutsTilesLocaleResolver.resolveLocale(StrutsTilesLocaleResolver.java:45)

    at org.apache.tiles.definition.UnresolvingLocaleDefinitionsFactory.getDefinition(UnresolvingLocaleDefinitionsFactory.java:86)

    at org.apache.tiles.impl.BasicTilesContainer.getDefinition(BasicTilesContainer.java:286)

    at org.apache.tiles.TilesContainerWrapper.getDefinition(TilesContainerWrapper.java:83)

    at org.apache.tiles.impl.mgmt.CachingTilesContainer.getDefinition(CachingTilesContainer.java:89)

    at org.apache.tiles.impl.mgmt.CachingTilesContainer.render(CachingTilesContainer.java:121)

    at org.apache.tiles.template.InsertDefinitionModel.renderDefinition(InsertDefinitionModel.java:132)

    at org.apache.tiles.template.InsertDefinitionModel.execute(InsertDefinitionModel.java:99)

    at org.apache.tiles.jsp.taglib.InsertDefinitionTag.doTag(InsertDefinitionTag.java:254)

    at org.apache.jsp.index_jsp._jspx_meth_tiles_005finsertDefinition_005f0(index_jsp.java:151)

    at org.apache.jsp.index_jsp._jspService(index_jsp.java:115)

    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:590)

    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433)

    ... 57 more

On 2020/10/28 14:28:45, Lukasz Lenart <lu...@apache.org> wrote: 
> śr., 28 paź 2020 o 11:55 Peer Mohammad <pe...@gmail.com> napisał(a):
> > Please find the web.xml and struts.xml file. I have observed that many library classes are not available in strut2-tiles-plugin file and xwork some package in struts-core-2.5.22 compare to struts2.3.35.
> 
> Not sure what do you mean by that? Which classes are missing? XWork
> was merged into Struts Core and there is no additional jar anymore.
> Maybe you are mixing different jars in your app, do you use Maven to
> control dependencies? Could you list jars from the lib folder?
> 
> Also did you use a proper DTD in your tiles.xml files as mentioned
> here https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration#Struts2.3to2.5migration-Tiles
> 
> <!DOCTYPE tiles-definitions PUBLIC
>        "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
>        "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
> 
> > Web.xml
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <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">
> >         <display-name>CHEETTA_online</display-name>
> >         <!-- <context-param>
> >                 <param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
> >                 <param-value>/WEB-INF/tiles.xml</param-value>
> >         </context-param> -->
> >         <listener>
> >                 <listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>
> >         </listener>
> >
> >         <!-- For Veracode CSRF issue - Added the below filters - Start -->
> >         <!-- Generates CSRF token and keeps in session and request objects -->
> >         <filter>
> >     <filter-name>CSRFTokenFilter</filter-name>
> >     <filter-class>com.sbc.cheetta.common.framework.filter.GenerateCSRFTokenFilter</filter-class>
> >         </filter>
> >         <filter-mapping>
> >             <filter-name>CSRFTokenFilter</filter-name>
> >             <url-pattern>/*</url-pattern>
> >         </filter-mapping>
> >          <filter-mapping>
> >             <filter-name>CSRFTokenFilter</filter-name>
> >             <url-pattern>*.action</url-pattern>
> >         </filter-mapping>
> >         <filter-mapping>
> >             <filter-name>CSRFTokenFilter</filter-name>
> >             <url-pattern>*.do</url-pattern>
> >         </filter-mapping>
> 
> This is duplication, just /* is enough, remove other patterns
> 
> >         <!-- Filter for validating CSRF attack-->
> >         <filter>
> >     <filter-name>CSRFValidationFilter</filter-name>
> >     <filter-class>com.sbc.cheetta.common.framework.filter.CSRFValidationFilter</filter-class>
> >      <init-param>
> >         <param-name>excludedUrls</param-name>
> >         <!-- Comma separated list of excluded servlets  -->
> >         <param-value>/index.jsp,/Welcome.do,/Logoff.do,/LogonSubmit.do,/networkEditProfileLinker.do,/images/swmainmenubutton.gif,/images/att_logo.gif,/images/mwmainmenubutton.gif,/images/admin.gif,/theme/Master.css,/images/wmainmenubutton.gif,/images/atmainmenubutton.gif,/images/bg_header1024.gif,/images/bg_footer1024.gif,/images/bg_header1024.gif</param-value>
> >      </init-param>
> >         </filter>
> >         <filter-mapping>
> >             <filter-name>CSRFValidationFilter</filter-name>
> >             <url-pattern>/*</url-pattern>
> >         </filter-mapping>
> >         <!-- For Veracode CSRF issue - Added the below filters - End -->
> >
> >         <filter>
> >                 <filter-name>xFrameOptionsFilter</filter-name>
> >                 <filter-class>com.sbc.cheetta.common.framework.filter.XFrameOptionsFilter</filter-class>
> >         </filter>
> >         <filter-mapping>
> >                 <filter-name>xFrameOptionsFilter</filter-name>
> >                 <url-pattern>*.action</url-pattern>
> >         </filter-mapping>
> >         <filter-mapping>
> >                 <filter-name>xFrameOptionsFilter</filter-name>
> >                 <url-pattern>*.do</url-pattern>
> >         </filter-mapping>
> >         <filter>
> >                 <filter-name>struts2</filter-name>
> >                 <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
> >                 <init-param>
> >                         <param-name>actionPackages</param-name>
> >                         <param-value>com.sbc.cheetta.actions</param-value>
> >                 </init-param>
> >         </filter>
> >         <filter-mapping>
> >                 <filter-name>struts2</filter-name>
> >                 <url-pattern>/*</url-pattern>
> >         </filter-mapping>
> >         <filter-mapping>
> >         <filter-name>struts2</filter-name>
> >         <url-pattern>*.action</url-pattern>
> >     </filter-mapping>
> >         <filter-mapping>
> >                 <filter-name>struts2</filter-name>
> >                 <url-pattern>*.do</url-pattern>
> >         </filter-mapping>
> 
> Same here, just left /* pattern
> 
> 
> Regards
> -- 
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Lukasz Lenart <lu...@apache.org>.
śr., 28 paź 2020 o 11:55 Peer Mohammad <pe...@gmail.com> napisał(a):
> Please find the web.xml and struts.xml file. I have observed that many library classes are not available in strut2-tiles-plugin file and xwork some package in struts-core-2.5.22 compare to struts2.3.35.

Not sure what do you mean by that? Which classes are missing? XWork
was merged into Struts Core and there is no additional jar anymore.
Maybe you are mixing different jars in your app, do you use Maven to
control dependencies? Could you list jars from the lib folder?

Also did you use a proper DTD in your tiles.xml files as mentioned
here https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration#Struts2.3to2.5migration-Tiles

<!DOCTYPE tiles-definitions PUBLIC
       "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
       "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">

> Web.xml
>
> <?xml version="1.0" encoding="UTF-8"?>
> <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">
>         <display-name>CHEETTA_online</display-name>
>         <!-- <context-param>
>                 <param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
>                 <param-value>/WEB-INF/tiles.xml</param-value>
>         </context-param> -->
>         <listener>
>                 <listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>
>         </listener>
>
>         <!-- For Veracode CSRF issue - Added the below filters - Start -->
>         <!-- Generates CSRF token and keeps in session and request objects -->
>         <filter>
>     <filter-name>CSRFTokenFilter</filter-name>
>     <filter-class>com.sbc.cheetta.common.framework.filter.GenerateCSRFTokenFilter</filter-class>
>         </filter>
>         <filter-mapping>
>             <filter-name>CSRFTokenFilter</filter-name>
>             <url-pattern>/*</url-pattern>
>         </filter-mapping>
>          <filter-mapping>
>             <filter-name>CSRFTokenFilter</filter-name>
>             <url-pattern>*.action</url-pattern>
>         </filter-mapping>
>         <filter-mapping>
>             <filter-name>CSRFTokenFilter</filter-name>
>             <url-pattern>*.do</url-pattern>
>         </filter-mapping>

This is duplication, just /* is enough, remove other patterns

>         <!-- Filter for validating CSRF attack-->
>         <filter>
>     <filter-name>CSRFValidationFilter</filter-name>
>     <filter-class>com.sbc.cheetta.common.framework.filter.CSRFValidationFilter</filter-class>
>      <init-param>
>         <param-name>excludedUrls</param-name>
>         <!-- Comma separated list of excluded servlets  -->
>         <param-value>/index.jsp,/Welcome.do,/Logoff.do,/LogonSubmit.do,/networkEditProfileLinker.do,/images/swmainmenubutton.gif,/images/att_logo.gif,/images/mwmainmenubutton.gif,/images/admin.gif,/theme/Master.css,/images/wmainmenubutton.gif,/images/atmainmenubutton.gif,/images/bg_header1024.gif,/images/bg_footer1024.gif,/images/bg_header1024.gif</param-value>
>      </init-param>
>         </filter>
>         <filter-mapping>
>             <filter-name>CSRFValidationFilter</filter-name>
>             <url-pattern>/*</url-pattern>
>         </filter-mapping>
>         <!-- For Veracode CSRF issue - Added the below filters - End -->
>
>         <filter>
>                 <filter-name>xFrameOptionsFilter</filter-name>
>                 <filter-class>com.sbc.cheetta.common.framework.filter.XFrameOptionsFilter</filter-class>
>         </filter>
>         <filter-mapping>
>                 <filter-name>xFrameOptionsFilter</filter-name>
>                 <url-pattern>*.action</url-pattern>
>         </filter-mapping>
>         <filter-mapping>
>                 <filter-name>xFrameOptionsFilter</filter-name>
>                 <url-pattern>*.do</url-pattern>
>         </filter-mapping>
>         <filter>
>                 <filter-name>struts2</filter-name>
>                 <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
>                 <init-param>
>                         <param-name>actionPackages</param-name>
>                         <param-value>com.sbc.cheetta.actions</param-value>
>                 </init-param>
>         </filter>
>         <filter-mapping>
>                 <filter-name>struts2</filter-name>
>                 <url-pattern>/*</url-pattern>
>         </filter-mapping>
>         <filter-mapping>
>         <filter-name>struts2</filter-name>
>         <url-pattern>*.action</url-pattern>
>     </filter-mapping>
>         <filter-mapping>
>                 <filter-name>struts2</filter-name>
>                 <url-pattern>*.do</url-pattern>
>         </filter-mapping>

Same here, just left /* pattern


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Peer Mohammad <pe...@gmail.com>.
Hi,

Please find the web.xml and struts.xml file. I have observed that many library classes are not available in strut2-tiles-plugin file and xwork some package in struts-core-2.5.22 compare to struts2.3.35.
I am not accessing jsp file directly.
Kindly check and the web.xml and struts.xml and guide me 
Web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<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">
	<display-name>CHEETTA_online</display-name>
	<!-- <context-param>
		<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
		<param-value>/WEB-INF/tiles.xml</param-value>
	</context-param> -->
	<listener>
		<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>
	</listener>
	
	<!-- For Veracode CSRF issue - Added the below filters - Start -->
	<!-- Generates CSRF token and keeps in session and request objects -->
	<filter>
    <filter-name>CSRFTokenFilter</filter-name>
    <filter-class>com.sbc.cheetta.common.framework.filter.GenerateCSRFTokenFilter</filter-class>
	</filter>
	<filter-mapping>
	    <filter-name>CSRFTokenFilter</filter-name>
	    <url-pattern>/*</url-pattern>
	</filter-mapping>
	 <filter-mapping>
	    <filter-name>CSRFTokenFilter</filter-name>
	    <url-pattern>*.action</url-pattern>
	</filter-mapping>
	<filter-mapping>
	    <filter-name>CSRFTokenFilter</filter-name>
	    <url-pattern>*.do</url-pattern>
	</filter-mapping>
	
	<!-- Filter for validating CSRF attack-->	
	<filter>
    <filter-name>CSRFValidationFilter</filter-name>
    <filter-class>com.sbc.cheetta.common.framework.filter.CSRFValidationFilter</filter-class>
     <init-param>
        <param-name>excludedUrls</param-name>
        <!-- Comma separated list of excluded servlets  -->
        <param-value>/index.jsp,/Welcome.do,/Logoff.do,/LogonSubmit.do,/networkEditProfileLinker.do,/images/swmainmenubutton.gif,/images/att_logo.gif,/images/mwmainmenubutton.gif,/images/admin.gif,/theme/Master.css,/images/wmainmenubutton.gif,/images/atmainmenubutton.gif,/images/bg_header1024.gif,/images/bg_footer1024.gif,/images/bg_header1024.gif</param-value>      
     </init-param>
	</filter>
	<filter-mapping>
	    <filter-name>CSRFValidationFilter</filter-name>
	    <url-pattern>/*</url-pattern>
	</filter-mapping>	
	<!-- For Veracode CSRF issue - Added the below filters - End -->
	
	<filter>
		<filter-name>xFrameOptionsFilter</filter-name>
		<filter-class>com.sbc.cheetta.common.framework.filter.XFrameOptionsFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>xFrameOptionsFilter</filter-name>
		<url-pattern>*.action</url-pattern>
	</filter-mapping> 
	<filter-mapping>
		<filter-name>xFrameOptionsFilter</filter-name>
		<url-pattern>*.do</url-pattern>
	</filter-mapping> 
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
		<init-param>
			<param-name>actionPackages</param-name>
			<param-value>com.sbc.cheetta.actions</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>*.action</url-pattern>
    </filter-mapping>
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>*.do</url-pattern>
	</filter-mapping>
	
	<servlet>
		<servlet-name>MetaDataServlet</servlet-name>
		<servlet-class>com.sbc.cheetta.util.MetaDataServlet</servlet-class>
		<load-on-startup>2</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>InvalidLogoutServlet</servlet-name>
		<servlet-class>com.sbc.cheetta.java.InvalidLogoutServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>InvalidLogoutServlet</servlet-name>
		<url-pattern>/InvalidLogoutServlet</url-pattern>
	</servlet-mapping>
	
	<session-config>
		<session-timeout>480</session-timeout>
	</session-config>
	
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	
	<resource-ref>
		<res-ref-name>CHEETTADataSource</res-ref-name>
		<res-type>javax.sql.DataSource</res-type>
		<res-auth>Container</res-auth>
		<res-sharing-scope>Shareable</res-sharing-scope>
	</resource-ref>
	
</web-app>

Struts.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
	<!--UNCOMMENT THIS FOR DEVMODE-->  
	<!-- <constant name="struts.devMode" value="true" /> -->
	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
	<constant name="struts.mapper.action.prefix.enabled" value="true" />
	<constant name="struts.action.extension" value="do"/> 
	<constant name="struts.custom.i18n.resources" value="com/sbc/cheetta/resources/ApplicationResources"/>
	<constant name="struts.ui.theme" value="simple" />
	<!-- <constant name="struts.strictMethodInvocation.methodRegex" value="*"/> -->
	<package name="default" extends="struts-default" namespace="/">
		
		<result-types>
			<result-type name="tiles"
				class="org.apache.struts2.views.tiles.TilesResult" />
			
		</result-types>
		<!-- Global Results -->
		<interceptors>
			<interceptor name="servletConfig" class="org.apache.struts2.interceptor.ServletConfigInterceptor"/>
			<interceptor name="modelDriven" class="com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"/>
			<interceptor name="params" class="com.opensymphony.xwork2.interceptor.ParametersInterceptor"/>
			<interceptor name="exception" class="com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor"/>
			<interceptor name="prepare" class="com.opensymphony.xwork2.interceptor.PrepareInterceptor"/>
			<interceptor name="i18n" class="com.opensymphony.xwork2.interceptor.I18nInterceptor"/>
			<interceptor name="chain" class="com.opensymphony.xwork2.interceptor.ChainingInterceptor"/>
			<interceptor name="conversionError" class="org.apache.struts2.interceptor.StrutsConversionErrorInterceptor"/>
			 <interceptor name="validation" class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>
			 
			 <!-- <default-interceptor-ref name="cheettaWithOutToken" /> -->
			 
			<interceptor-stack name="cheettaWithToken">			
                <interceptor-ref name="token"/>
                <interceptor-ref name="exception"/>
                <interceptor-ref name="servletConfig"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="modelDriven"/>
        	    <interceptor-ref name="params">
                <!-- <param name="excludeParams">dojo\..*,^struts\..*</param> -->
                <param name="excludeParams">dojo\..*</param>
                </interceptor-ref>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel,browse</param>
                </interceptor-ref>
               </interceptor-stack>	
           		<interceptor-stack name="cheettaWithOutToken">			              
                <interceptor-ref name="exception"/>
                <interceptor-ref name="servletConfig"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="modelDriven"/>
        	    <interceptor-ref name="params">
                <param name="excludeParams">dojo\..*,^struts\..*</param>
                </interceptor-ref>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel,browse</param>
                </interceptor-ref> 
           </interceptor-stack>
		</interceptors>	
	
		
		<global-results>			
			<result name="logoff" type="redirect">Logoff.do</result>
			<result name="invalidlogout" type="redirect">InvalidLogout.do</result>
			<result name="logon">/Logon.jsp</result>
			<result name="welcome">/Logon.jsp</result>
			<result name="success">/Welcome.jsp</result>
			<result name="welcomeadmin">/WelcomeAdmin.jsp</result>
			<result name="failure" type="tiles">cheetta.logicError</result>
			<result name="lgcerr" type="tiles">cheetta.logicError</result>
			<result name="exit" type="tiles">cheetta.login</result>
			<result name="nmw" type="redirect">RegionDispatch.do</result>
			<result name="timeout" type="tiles">cheetta.login</result>
			<result name="underdevelopment" type="tiles">cheetta.underdevelopment</result>
			<result name="customException" type="tiles">cheetta.customError</result>			
			<result name="invalid.token" type="tiles">cheetta.token</result>
		</global-results>
		
	   <global-exception-mappings>           
            <exception-mapping exception="com.sbc.cheetta.exceptions.CheettaCommonException" result="customException"/>
        </global-exception-mappings>

		<!-- Action Mappings -->
		<action name="Welcome">
		<interceptor-ref name="cheettaWithOutToken"/>
			<!-- <result>/Welcome.jsp</result> -->
			<result type="tiles">cheetta.welcome</result>
		</action>


		<action name="LogonSubmit" class="com.sbc.cheetta.actions.LogonAction" method="execute">   
		    <interceptor-ref name="cheettaWithToken"/>        
			<result name="success" type="tiles">cheetta.cheettaRegion</result>
			<result name="failure" type="tiles">cheetta.login</result>
			<!--<result name="PWRESET" type="redirect">PasswordReset.do?action=RWRESET</result> -->
		</action>
		
		
		<action name="Logoff" class="com.sbc.cheetta.actions.LogoffAction"
			method="execute">	
			<interceptor-ref name="cheettaWithOutToken"/>   			
			<result name="success" type="tiles">cheetta.logoff</result>
		</action>

		
		<action name="RegionDispatch" class="com.sbc.cheetta.actions.RegionDispatchAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/> 
			<result name="success" type="tiles">cheetta.cheettaRegion</result>
			<result name="ADMIN" type="tiles">cheetta.admnSubMenu</result>
			<result name="Marketing Midwest Employees" type="tiles">cheetta.mmwe
			</result>
			<result name="Network Midwest Employees" type="tiles">cheetta.nmwe
			</result>
			<result name="Marketing Southwest Employees" type="tiles">cheetta.mswe
			</result>
			<result name="Network Southwest Employees" type="tiles">cheetta.nswe
			</result>
			<result name="Marketing West Employees" type="tiles">cheetta.mwe
			</result>
			<result name="Network West Employees" type="tiles">cheetta.nwe
			</result>
			<result name="Marketing AT Employees" type="tiles">cheetta.at</result>
			<!--<result name="PWRESET" type="redirect">PasswordReset.do</result>-->
			<result name="MKTG" type="redirect">MktLogDisplay.do</result>
			<result name="NEWMKTG" type="redirect">marketingLinker.do</result>
			<result name="NTWK" type="redirect">NetLogDisplay.do</result>
			<result name="NEWNTWK" type="redirect">networkLinker.do</result>
			<result name="LOCKBACKTOMAIN" type="tiles">cheetta.cheettaRegion
			</result>
			<result name="LOGRESET" type="tiles">cheetta.cheettaRegion</result>
			<result name="failure" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<!--Commented as it is not referenced 
		 <action name="PasswordReset" class="com.sbc.cheetta.actions.PasswordResetAction"
			method="execute">
			<result name="success" type="tiles">cheetta.passwordReset</result>
			<result name="MainMenu" type="tiles">cheetta.cheettaRegion</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>-->

		<action name="MktLogDisplay" class="com.sbc.cheetta.actions.MktLogDisplayAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="redirect">MarketingInterview.do</result>
		</action>

		<action name="NetLogDisplay" class="com.sbc.cheetta.actions.NetLogDisplayAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="redirect">NetworkInterview.do</result>
		</action>

		<action name="MktMidwestSubMenu" class="com.sbc.cheetta.actions.MktMidwestSubMenuAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">MarketingSamples</result>
			<result name="Review All Samples" type="redirectAction">MarketingSamples</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="Mailings" type="tiles">cheetta.underdevelopment</result>
			<result name="System Maintenance" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="MktSouthwestSubMenu"
			class="com.sbc.cheetta.actions.MktSouthwestSubMenuAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">MarketingSamples</result>
			<result name="Review All Samples" type="redirectAction">MarketingSamples</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="Mailings" type="tiles">cheetta.underdevelopment</result>
			<result name="System Maintenance" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="MktWestSubMenu" class="com.sbc.cheetta.actions.MktWestSubMenuAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">MarketingSamples</result>
			<result name="Review All Samples" type="redirectAction">MarketingSamples</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="Mailings" type="tiles">cheetta.underdevelopment</result>
			<result name="System Maintenance" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="MktATSubMenu" class="com.sbc.cheetta.actions.MktATSubMenuAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">MarketingSamples</result>
			<result name="Review All Samples" type="redirectAction">MarketingSamples</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="Mailings" type="tiles">cheetta.underdevelopment</result>
			<result name="System Maintenance" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="MarketingSamples" class="com.sbc.cheetta.actions.MarketingSamplesAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktallsmpls</result>
		</action>

		<action name="ProcessMarketingSamples"
			class="com.sbc.cheetta.actions.ProcessMarketingSamplesAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="DATE" type="redirect">MarketingSamples.do</result>
			<result name="PREVIOUS" type="redirect">MarketingSamples.do</result>
			<result name="NEXT" type="redirect">MarketingSamples.do</result>
			<result name="REVERT" type="redirect">MarketingSamples.do</result>
			<result name="NAME" type="redirect">MarketingSamples.do</result>
			<result name="ID" type="redirect">MarketingSamples.do</result>
			<result name="SELECTION" type="redirect">MarketingInterview.do</result>
			<result name="LOCKBACKTOSAMPLE" type="tiles">cheetta.mktallsmpls
			</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.mktOpenNewLog</result>
			<result name="UPDATE" type="redirect">MarketingSamples.do</result>
			<result name="UPDATENOTES" type="redirect">MarketingSamples.do</result>
			<result name="EMAIL" type="redirect">processMarketingEmailLog.do</result>
			<result name="REMINDERS" type="redirect">processMarketingReminders.do
			</result>
			<result name="EXIT" type="redirect">RegionDispatch.do</result>
		</action>

		<action name="processMarketingEmailLog"
			class="com.sbc.cheetta.actions.ProcessMarketingEmailLogAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktAllEmailLog</result>
			<result name="CANCEL" type="redirect">MarketingSamples.do</result>
			<result name="EXIT" type="redirect">MarketingSamples.do</result>
		</action>

		<action name="processMarketingReminders"
			class="com.sbc.cheetta.actions.ProcessMarketingRemindersAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktAllReminders</result>
			<result name="CANCEL" type="redirect">MarketingSamples.do</result>
			<result name="EXIT" type="redirect">MarketingSamples.do</result>
		</action>

		<action name="ProcessMarketingInterview"
			class="com.sbc.cheetta.actions.ProcessMarketingInterviewAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="DATE" type="redirect">MarketingInterview.do</result>
			<result name="VERIFY" type="redirect">MarketingInterview.do</result>
			<result name="UNDOALL" type="redirect">MarketingInterview.do</result>
			<result name="UNDOLAST" type="redirect">MarketingInterview.do</result>
			<result name="REPORT" type="redirect">MarketingInterview.do</result>
			<result name="SAVE" type="redirect">MarketingInterview.do</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.mktOpenNewLog</result>
			<result name="TECHHISTORY" type="redirect">MarketingInterview.do</result>
			<result name="EXITTOSAMPLE" type="redirect">MarketingInterview.do</result>
			<result name="VIEWSAMPLE" type="redirect">MarketingInterview.do</result>
			<result name="EXITTOMAINMENU" type="redirect">MarketingInterview.do</result>
		</action>

		<action name="MarketingInterview" class="com.sbc.cheetta.actions.MarketingInterviewAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktinterview</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.mktOpenNewLog</result>
			<result name="REPORT" type="tiles">cheetta.mktVerReport</result>
			<result name="TECHHISTORY" type="tiles">cheetta.mktsamplehistory
			</result>
			<result name="LOCKBACKTOHISTORY" type="tiles">cheetta.mktsamplehistory
			</result>
			<result name="LOCKBACKTOINTERVIEW" type="tiles">cheetta.mktinterview
			</result>
			<result name="EXITTOSAMPLE" type="redirect">MarketingSamples.do</result>
			<result name="EXITTOMAINMENU" type="redirect">RegionDispatch.do
			</result>
		</action>

		<action name="ProcessMarketingNewLog"
			class="com.sbc.cheetta.actions.ProcessMarketingNewLogAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="NEWLOG" type="redirect">MarketingInterview.do</result>
			<result name="NEWEXP" type="tiles">cheetta.mktCreateExeption</result>
			<result name="CANCEL" type="redirect">MarketingSamples.do</result>
			<result name="EXITTOMAINMENU" type="redirect">RegionDispatch.do</result>
			<result name="SELECTION" type="redirect">ProcessMarketingSamples.do</result>
		</action>

		<action name="MarketingCloseException"
			class="com.sbc.cheetta.actions.MarketingCloseExceptionAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="redirect">MarketingSamples.do</result>
			<result name="CANCEL" type="tiles">cheetta.mktOpenNewLog</result>
		</action>

		<action name="MarketingVerReport" class="com.sbc.cheetta.actions.MarketingVerReportAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="redirect">MarketingInterview.do</result>
		</action>

		<action name="NetMidwestSubMenu" class="com.sbc.cheetta.actions.NetMidwestSubMenuAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">NetworkSamples</result>
			<result name="Review All Samples" type="redirectAction">NetworkSamples</result>
			<result name="Mailings" type="redirect">networkMailings.do</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="GCAS Activity Log Report" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="NetSouthwestSubMenu"
			class="com.sbc.cheetta.actions.NetSouthwestSubMenuAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">NetworkSamples</result>
			<result name="Review All Samples" type="redirectAction">NetworkSamples</result>
			<result name="Mailings" type="redirect">networkMailings.do</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="GCAS Activity Log Report" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="NetWestSubMenu" class="com.sbc.cheetta.actions.NetWestSubMenuAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Review Analyst Samples" type="redirectAction">NetworkSamples</result>
			<result name="Review All Samples" type="redirectAction">NetworkSamples</result>
			<result name="Mailings" type="redirect">networkMailings.do</result>
			<result name="Reports" type="tiles">cheetta.underdevelopment</result>
			<result name="GCAS Activity Log Report" type="tiles">cheetta.underdevelopment
			</result>
			<result name="Exit" type="tiles">cheetta.cheettaRegion</result>
		</action>

		<action name="NetworkSamples" class="com.sbc.cheetta.actions.NetworkSamplesAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.netallsmpls</result>
		</action>

		<action name="networkMailings" class="com.sbc.cheetta.actions.NetworkMailingsAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.networkMailings</result>
			<result name="MWCANCEL" type="redirect">RegionDispatch.do</result>
			<result name="MWEXIT" type="redirect">RegionDispatch.do</result>
			<result name="WCANCEL" type="redirect">RegionDispatch.do</result>
			<result name="WEXIT" type="redirect">RegionDispatch.do</result>
			<result name="SWCANCEL" type="redirect">RegionDispatch.do</result>
			<result name="SWEXIT" type="redirect">RegionDispatch.do</result>
		</action>

		<action name="ProcessNetworkSamples"
			class="com.sbc.cheetta.actions.ProcessNetworkSamplesAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="DATE" type="redirect">NetworkSamples.do</result>
			<result name="PREVIOUS" type="redirect">NetworkSamples.do</result>
			<result name="NEXT" type="redirect">NetworkSamples.do</result>
			<result name="REVERT" type="redirect">NetworkSamples.do</result>
			<result name="NAME" type="redirect">NetworkSamples.do</result>
			<result name="ID" type="redirect">NetworkSamples.do</result>
			<result name="SELECTION" type="redirect">NetworkInterview.do</result>
			<result name="LOCKBACKTOSAMPLE" type="tiles">cheetta.netallsmpls
			</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.netOpenNewLog</result>
			<result name="UPDATE" type="redirect">NetworkSamples.do</result>
			<result name="UPDATENOTES" type="redirect">NetworkSamples.do</result>
			<result name="EMAIL" type="redirect">processNetworkEmailLog.do</result>
			<result name="REMINDERS" type="redirect">processNetworkReminders.do
			</result>
				
			<result name="EXIT" type="redirect">RegionDispatch.do</result>
		</action>

		<action name="processNetworkEmailLog"
			class="com.sbc.cheetta.actions.ProcessNetworkEmailLogAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.netAllEmailLog</result>
			<result name="CANCEL" type="redirect">NetworkSamples.do</result>
			<result name="EXIT" type="redirect">NetworkSamples.do</result>
		</action>

		<action name="processNetworkReminders"
			class="com.sbc.cheetta.actions.ProcessNetworkRemindersAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.netAllReminders</result>
			<result name="CANCEL" type="redirect">NetworkSamples.do</result>
			<result name="EXIT" type="redirect">NetworkSamples.do</result>
		</action>

		<action name="ProcessNetworkInterview"
			class="com.sbc.cheetta.actions.ProcessNetworkInterviewAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="DATE" type="redirect">NetworkInterview.do</result>
			<result name="SELECTJOB" type="redirect">NetworkInterview.do</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.netOpenNewLog</result>
			<result name="OPENNEWJOB" type="redirect">NetworkInterview.do</result>
			<result name="ADDNEWJOB" type="redirect">NetworkInterview.do</result>
			<result name="CANCELNEWJOB" type="redirect">NetworkInterview.do</result>
			<result name="DELETEJOB" type="redirect">NetworkInterview.do</result>
			<result name="SAVE" type="redirect">NetworkInterview.do</result>
			<result name="VERIFY" type="redirect">NetworkInterview.do</result>
			<result name="UNDOALL" type="redirect">NetworkInterview.do</result>
			<result name="UNDOLAST" type="redirect">NetworkInterview.do</result>
			<result name="TECHHISTORY" type="redirect">NetworkInterview.do</result>
			<result name="VIEWSAMPLE" type="redirect">NetworkInterview.do</result>
			<result name="REPORT" type="redirect">NetworkInterview.do</result>
			<result name="APPROVAL" type="redirect">NetworkInterview.do</result>
			<result name="EXITTOSAMPLE" type="redirect">NetworkInterview.do</result>
			<result name="EXITTOMAINMENU" type="redirect">NetworkInterview.do
			</result>
		</action>

		<action name="NetworkInterview" class="com.sbc.cheetta.actions.NetworkInterviewAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.netinterview</result>
			<result name="OPENNEWJOB" type="tiles">cheetta.netaddjob</result>
			<result name="OPENNEWLOG" type="tiles">cheetta.netOpenNewLog</result>
			<result name="REPORT" type="tiles">cheetta.netVerReport</result>
			<result name="TECHHISTORY" type="tiles">cheetta.netsamplehistory</result>
			<result name="LOCKBACKTOHISTORY" type="tiles">cheetta.netsamplehistory</result>
			<result name="LOCKBACKTOINTERVIEW" type="tiles">cheetta.netinterview</result>
			<result name="EXITTOSAMPLE" type="redirect">NetworkSamples.do</result>
			<result name="EXITTOMAINMENU" type="redirect">RegionDispatch.do</result>		
		</action>

		<action name="ProcessNetworkNewLog"
			class="com.sbc.cheetta.actions.ProcessNetworkNewLogAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="NEWLOG" type="redirect">NetworkInterview.do</result>
			<result name="NEWEXP" type="tiles">cheetta.netCreateExeption</result>
			<result name="CANCEL" type="redirect">NetworkSamples.do</result>
			<result name="EXITTOMAINMENU" type="redirect">RegionDispatch.do</result>
			<result name="SELECTION" type="redirect">ProcessNetworkSamples.do</result>
		</action>

		<action name="NetworkCloseException"
			class="com.sbc.cheetta.actions.NetworkCloseExceptionAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="redirect">NetworkSamples.do</result>
			<result name="CANCEL" type="tiles">cheetta.netOpenNewLog</result>
		</action>

        <!-- Action name AuthUserInsert is not invoked via any JSP file. 
        It is invoked via TableMaintenanceAction, that is why we use cheettaWithOutToken as interceptor-ref, because <s:token/> is only set only via jsp -->
		<action name="AuthUserInsert" class="com.sbc.cheetta.actions.AuthUserInsertAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>			
			<result name="success" type="tiles">cheetta.authUser</result>
			
			
		</action>

		<action name="AnalystInsert" class="com.sbc.cheetta.actions.AnalystInsertAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.analystMaintenance
			</result>
		</action>

		<action name="ProfileInsert" class="com.sbc.cheetta.actions.ProfileInsertAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.profileMaintenance
			</result>
		</action>

		<action name="ProfileControlInsert"
			class="com.sbc.cheetta.actions.ProfileControlInsertAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.profileControlMaintenance
			</result>
		</action>

		<action name="ProcessAuthUserInsert"
			class="com.sbc.cheetta.actions.ProcessAuthUserInsertAction" method="execute">
			<interceptor-ref name="cheettaWithToken"/> 			
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance</result>
			<result name="success" type="tiles">cheetta.authUser</result>
			<result name="failure" type="tiles">cheetta.authUser</result>
		</action>

		<action name="ProcessAnalystInsert"
			class="com.sbc.cheetta.actions.ProcessAnalystInsertAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="Insert" type="redirect">AnalystInsert.do</result>
			<result name="Update" type="redirect">AnalystInsert.do</result>
			<result name="successUpdate" type="tiles">cheetta.underdevelopment
			</result>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance
			</result>
			<result name="success" type="tiles">cheetta.analystMaintenance
			</result>
		</action>
		<action name="AdminEmail" class="com.sbc.cheetta.actions.AdminEmailAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.adminEmail</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>

		<action name="marketingActivity" class="com.sbc.cheetta.actions.MarketingActivityAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktgActivityCodes</result>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance
			</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>

		<action name="marketingProduct" class="com.sbc.cheetta.actions.MarketingProductAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.mktgProductCodes</result>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance
			</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
			<result name="EnterTaskCodeForProduct" type="redirect">EnterTaskCodeForProduct.do
			</result>
		</action>

		<action name="EnterTaskCodeForProduct"
			class="com.sbc.cheetta.actions.EnterTaskCodeForProductAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
			<result name="marketingProductForm" type="redirect">marketingProduct.do</result>
			<result name="success" type="tiles">cheetta.EnterTaskCodeForProduct</result>
		</action>

		<action name="exceptionElinkCodes"
			class="com.sbc.cheetta.actions.ExceptionElinkCodesAction" method="runAction">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="SUCCESS" type="tiles">cheetta.exceptionElinkCodes</result>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>

		<action name="companyCode" class="com.sbc.cheetta.actions.CompanyCodeAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.companyCode</result>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>

		<action name="holiday" class="com.sbc.cheetta.actions.HolidayAction"
			method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="tableMaintenance" type="tiles">cheetta.tableMaintenance</result>
			<result name="success" type="tiles">cheetta.holiday</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>

			<action name="unlockLogAdmin" class="com.sbc.cheetta.actions.UnlockLogAdminAction" method="execute">
		    <interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.unlockLogAdmin</result>
			<result name="EXIT" type="tiles">cheetta.admnSubMenu</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>
		
		<action name="resetCreatePercents" class="com.sbc.cheetta.actions.ResetCreatePercentsAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.resetCreatePercents</result>
			<result name="EXIT" type="tiles">cheetta.admnSubMenu</result>
			<result name="sessionexpired" type="tiles">cheetta.login</result>
		</action>
		
		<action name="marketingLinker" class="com.sbc.cheetta.actions.MarketingLinkerAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="SELECTION" type="redirect">ProcessMarketingNewLog.do</result>
		</action>
		
		<action name="networkLinker" class="com.sbc.cheetta.actions.NetworkLinkerAction" method="execute">
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="SELECTION" type="redirect">ProcessNetworkNewLog.do</result>
		</action>
 
 		<action name="networkEditProfileLinker" class="com.sbc.cheetta.actions.NetworkEditProfileAction" method="execute">			
			<interceptor-ref name="cheettaWithOutToken"/>
			<result name="success" type="tiles">cheetta.netEditProfile</result>
			<result name="failure" type="tiles">cheetta.netEditProfile</result>
		</action>
	</package>
</struts>

Thanks and Regrads
-----
Peer M Ansari


On 2020/10/02 05:07:04, Lukasz Lenart <lu...@apache.org> wrote: 
> czw., 1 paź 2020 o 22:00 Peer Mohammad <pe...@gmail.com> napisał(a):
> > I have followed the above mentioned guide and i had removed the XWork as well,But error remains the same. I am trying last 45 days to resolve this issue but able to resolve yet. Any suggestion/guidance will be appreciable.
> 
> Can you share your web.xml and struts.xml? Also do you access a JSP
> file directly through the browser?
> 
> 
> Regards
> -- 
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Lukasz Lenart <lu...@apache.org>.
czw., 1 paź 2020 o 22:00 Peer Mohammad <pe...@gmail.com> napisał(a):
> I have followed the above mentioned guide and i had removed the XWork as well,But error remains the same. I am trying last 45 days to resolve this issue but able to resolve yet. Any suggestion/guidance will be appreciable.

Can you share your web.xml and struts.xml? Also do you access a JSP
file directly through the browser?


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Peer Mohammad <pe...@gmail.com>.

On 2020/09/28 11:17:50, Lukasz Lenart <lu...@apache.org> wrote: 
> pon., 28 wrz 2020 o 12:35 Peer Mohammad <pe...@gmail.com> napisał(a):
> >
> > Hi Team,
> >
> > I am getting error while migrating Struts2.3.35 to Struts2.5.22 as "There is no ActionContext for current request! - [unknown location]"
> > console log: ERROR StrutsTilesLocaleResolver cannot obtain HttpServletRequest from [org.apache.tiles.request.jsp.JspRequest].
> 
> Did you follow the upgrade procedure?
> https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration#Struts2.3to2.5migration-Tiles
> 
> > list of jars for Strust2.5.22
> >
> > struts2-core 2.5.22
> > freemarker -2.3.30
> > xwork-core -2.3.37
> 
> You do not need XWork anymore, please remove the jar
> 
> 
> Regards
> -- 
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> I have followed the above mentioned guide and i had removed the XWork as well,But error remains the same. I am trying last 45 days to resolve this issue but able to resolve yet. Any suggestion/guidance will be appreciable.
Thanks,
Peer M Ansari 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: Issue in migration from struts2.3.35 to struts2.5.22

Posted by Lukasz Lenart <lu...@apache.org>.
pon., 28 wrz 2020 o 12:35 Peer Mohammad <pe...@gmail.com> napisał(a):
>
> Hi Team,
>
> I am getting error while migrating Struts2.3.35 to Struts2.5.22 as "There is no ActionContext for current request! - [unknown location]"
> console log: ERROR StrutsTilesLocaleResolver cannot obtain HttpServletRequest from [org.apache.tiles.request.jsp.JspRequest].

Did you follow the upgrade procedure?
https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration#Struts2.3to2.5migration-Tiles

> list of jars for Strust2.5.22
>
> struts2-core 2.5.22
> freemarker -2.3.30
> xwork-core -2.3.37

You do not need XWork anymore, please remove the jar


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org