i know you'll be sad reading this, but no struts 2 officially supports jsr 168 only.
But, you can use spring framework for jsr 286 support if you like to. The only drawback is you will be using Spring MVC which is bit cumbersome than struts 2 and has not much of any tag libraries.
The situation is that I have an existing Struts 2 web app which I need to migrate to a portlet application.
However meanwhile I understand that I am allowed to follow JSR 168 standard, so there's no (real) problem there. I noticed there is a Maven archetype 'struts2-archetype-portlet' which I can use to create a Struts2-JSR168-portlet project.
Having the existing Struts 2 app, are there any circumstances I need to consider when copying the code into the JSR168 portlet app (and without a doubt having to do some alterations)?
I'm not sure if you have selected a server, but Liferay uses Struts extensively under the covers to produce their standard portlets.
The Community Edition and source code are available as downloads from liferay.com or sourceforge.
You could grab them and crack them open to have a look.
For my next trick, I'll need the help of a tiny ad ...
a bit of art, as a gift, that will fit in a stocking