Sunday, February 10, 2013

STRUTS ACTION HOOK


To extend the CreateAccountAction ,  there are different types of hook to achieve  . Here we are going to discuss about Struts Action Hook.


Steps 1 : Add the struts action path and your custom implementation file in liferay-hook.xml :

<struts-action>
<struts-action-path>/login/create_account</struts-action-path> 
<struts-action-impl>com.liferay.login.hook.action.CustomCreateAccountAction</struts-action-impl>
</struts-action>

Step 2: Create custom implemetation file [CustomCreateAccountAction] in above mentioned location . [com.liferay.login.hook.action]

public class CustomCreateAccountAction extends BaseStrutsPortletAction{

public CustomCreateAccountAction() {
// TODO Auto-generated constructor stub
}

@Override
public void processAction(StrutsPortletAction originalStrutsPortletAction,
PortletConfig portletConfig, ActionRequest actionRequest,
ActionResponse actionResponse) throws Exception {
// TODO Auto-generated method stub
System.out.println("inside the process actionwhile creating the account>>>");
super.processAction(originalStrutsPortletAction, portletConfig, actionRequest,
actionResponse);
}

@Override
public String render(StrutsPortletAction originalStrutsPortletAction,PortletConfig portletConfig,
RenderRequest renderRequest, RenderResponse renderResponse)
throws Exception {
// TODO Auto-generated method stub
System.out.println("inside the render action while creating the account>>>");
return super.render(portletConfig, renderRequest, renderResponse);
}
}


Step 3: deploy.

Done. But sometime you might confuse when we need to extend BaseStrutsPortletAction and BaseStrutsAction.

Struts action interfaces:

com.liferay.portal.kernel.struts.StrutsAction
com.liferay.portal.kernel.struts.StrutsPortletAction

The StrutsAction interface is for regular Struts actions, like /c/portal/update_email_address, from the portal
The StrutsPortletAction interface is used for similar Struts actions from portlets.

Note: If you use BaseStrutsAction, you should override "execute" method:

public class SampleStrutsAction extends BaseStrutsAction {  
@Override 
public String execute(StrutsAction originalStrutsAction, HttpServletRequest request, HttpServletResponse response) throws Exception {  
System.out.println("SampleLayoutStrutsAction.execute() - " + request.getRequestURI());  
return originalStrutsAction.execute(request, response); 
}  
}


Exceptions :


1. "Cannot be Cast" Exception

Some time if you get an exception like "ActionAdapter cannot be cast to PortletActionAdapter" or "PortletActionAdapter cannot be cast to ActionAdapter"

To resolve that:

ActionAdapter cannot be cast to PortletActionAdapter :

    you have implemneted BaseStrutsAction instead of BaseStrutsPortletAction

2) PortletActionAdapter cannot be cast to ActionAdapter :

    you have implemneted BaseStrutsPortletAction instead of BaseStrutsAction

2.  "Forward Does not exist" Exception

If you get an exception like this , then In render method of custom implementation file [CustomCreateAccountAction ] before return statement, 
we need to change that behavier by setting renderRequest.setAttribute(WebKeys.PORTLET_DECORATE, Boolean.TRUE); 

use this :

String ret = originalStrutsPortletAction.render(null, portletConfig, renderRequest, renderResponse);
 renderRequest.setAttribute(WebKeys.PORTLET_DECORATE, Boolean.TRUE);
 return ret;


instead of ,

return originalStrutsPortletAction.render(null, portletConfig, renderRequest, renderResponse);

3.  If It doesn't redirect to Original Path

After successfully implementing struts action hook, If it doesn't redirect to it's original path, you need to use originalStrutsPortletAction in processAction method.

 For example after creating the user , if it stays in same create account page instead of login page which is default behaviour, then use like this :

originalStrutsPortletAction.processAction(portletConfig, actionRequest, actionResponse);

instead of,

super.processAction(originalStrutsPortletAction, portletConfig, actionRequest,actionResponse);

if any queries , please contact gnaniyar@gmail.com 

- Gnaniyar Zubair
gnaniyar@gmail.com

8 comments:

Unknown said...

hi. how to override com.liferay.portal.action.LogoutAction ?
Please help me .

chandra bhanu rastogi said...

Hi Emad,

If you have override LogoutAction then please let me know how you did it.
I also need to do that but unable to make it work.

PAK RAMLI DI PALEMBANG said...

SAYARAMLI INGIN BERBAGI CERITA KEPADA SEMUA ORANG BAHWA MUNKIN AKU ADALAH ORANG YANG PALING MISKIN DIDUNIA DAN SAYA HIDUP BERSAMA ISTRI DAN 3 BUAH HATI SAYA SELAMA 10 TAHUN DAN 10 TAHUN ITU KAMI TIDAK PERNAH MERASAKAN YANG NAMANYA KEMEWAHAN,,SETIAP HARI SAYA SELALU MEMBANTIN TULANG UNTUK KELUARGA SAYA NAMUN ITU SEMUA TIDAK PERNAH CUKUP UNTUK KEBUTUHAN HIDUP KELUARGA SAYA..AKHIRNYA AKU PILIH JALAN TOGEL INI DAN SUDAH BANYAK PARA NORMALYANG SAYA HUBUNGI NAMUN ITU SEMUA TIDAK PERNAH MEMBAWAKAN HASIL DAN DISITULAH AKU SEMPAT PUTUS ASA AKHIRNYA ADA SEORANG TEMAN YANG MEMBERIKAN NOMOR MBAH KABOIRENG,,SAYA PIKIR TIDAK ADA SALAHNYA JUGA SAYA COBA LAGI UNTUK MENGHUBUNGI MBAH KABOIRENG DAN AKHIRNYA MBAH KABOIRENG MEMBERIKAN ANKA GHOIBNYA DAN ALHAMDULILLAH BERHASIL..KINI SAYA SANGAT BERSYUKUR MELIHAT KEHIDUPAN KELUARGA SAYA SUDAH JAUH LEBIH BAIK DARI SEBELUMNYA,DAN TANDA TERIMAH KASIH SAYA KEPADA MBAH KABOIRENG SETIAP SAYA DAPAT RUANGAN PASTI SAYA BERKOMENTAR TENTAN MBAH KABOIRENG…BAGI ANDA YANG INGIN SEPERTI SAYA SILAHKAN HUBUNGI 0-8-2-3-2-2-2-1-2-1-1-1 MBAH KABOIRENG. KLIK DISINI!







SAYARAMLI INGIN BERBAGI CERITA KEPADA SEMUA ORANG BAHWA MUNKIN AKU ADALAH ORANG YANG PALING MISKIN DIDUNIA DAN SAYA HIDUP BERSAMA ISTRI DAN 3 BUAH HATI SAYA SELAMA 10 TAHUN DAN 10 TAHUN ITU KAMI TIDAK PERNAH MERASAKAN YANG NAMANYA KEMEWAHAN,,SETIAP HARI SAYA SELALU MEMBANTIN TULANG UNTUK KELUARGA SAYA NAMUN ITU SEMUA TIDAK PERNAH CUKUP UNTUK KEBUTUHAN HIDUP KELUARGA SAYA..AKHIRNYA AKU PILIH JALAN TOGEL INI DAN SUDAH BANYAK PARA NORMALYANG SAYA HUBUNGI NAMUN ITU SEMUA TIDAK PERNAH MEMBAWAKAN HASIL DAN DISITULAH AKU SEMPAT PUTUS ASA AKHIRNYA ADA SEORANG TEMAN YANG MEMBERIKAN NOMOR MBAH KABOIRENG,,SAYA PIKIR TIDAK ADA SALAHNYA JUGA SAYA COBA LAGI UNTUK MENGHUBUNGI MBAH KABOIRENG DAN AKHIRNYA MBAH KABOIRENG MEMBERIKAN ANKA GHOIBNYA DAN ALHAMDULILLAH BERHASIL..KINI SAYA SANGAT BERSYUKUR MELIHAT KEHIDUPAN KELUARGA SAYA SUDAH JAUH LEBIH BAIK DARI SEBELUMNYA,DAN TANDA TERIMAH KASIH SAYA KEPADA MBAH KABOIRENG SETIAP SAYA DAPAT RUANGAN PASTI SAYA BERKOMENTAR TENTAN MBAH KABOIRENG…BAGI ANDA YANG INGIN SEPERTI SAYA SILAHKAN HUBUNGI 0-8-2-3-2-2-2-1-2-1-1-1 MBAH KABOIRENG. KLIK DISINI!











SAYARAMLI INGIN BERBAGI CERITA KEPADA SEMUA ORANG BAHWA MUNKIN AKU ADALAH ORANG YANG PALING MISKIN DIDUNIA DAN SAYA HIDUP BERSAMA ISTRI DAN 3 BUAH HATI SAYA SELAMA 10 TAHUN DAN 10 TAHUN ITU KAMI TIDAK PERNAH MERASAKAN YANG NAMANYA KEMEWAHAN,,SETIAP HARI SAYA SELALU MEMBANTIN TULANG UNTUK KELUARGA SAYA NAMUN ITU SEMUA TIDAK PERNAH CUKUP UNTUK KEBUTUHAN HIDUP KELUARGA SAYA..AKHIRNYA AKU PILIH JALAN TOGEL INI DAN SUDAH BANYAK PARA NORMALYANG SAYA HUBUNGI NAMUN ITU SEMUA TIDAK PERNAH MEMBAWAKAN HASIL DAN DISITULAH AKU SEMPAT PUTUS ASA AKHIRNYA ADA SEORANG TEMAN YANG MEMBERIKAN NOMOR MBAH KABOIRENG,,SAYA PIKIR TIDAK ADA SALAHNYA JUGA SAYA COBA LAGI UNTUK MENGHUBUNGI MBAH KABOIRENG DAN AKHIRNYA MBAH KABOIRENG MEMBERIKAN ANKA GHOIBNYA DAN ALHAMDULILLAH BERHASIL..KINI SAYA SANGAT BERSYUKUR MELIHAT KEHIDUPAN KELUARGA SAYA SUDAH JAUH LEBIH BAIK DARI SEBELUMNYA,DAN TANDA TERIMAH KASIH SAYA KEPADA MBAH KABOIRENG SETIAP SAYA DAPAT RUANGAN PASTI SAYA BERKOMENTAR TENTAN MBAH KABOIRENG…BAGI ANDA YANG INGIN SEPERTI SAYA SILAHKAN HUBUNGI 0-8-2-3-2-2-2-1-2-1-1-1 MBAH KABOIRENG. KLIK DISINI!

pak karta malaysia said...

SAYA SEKELUARGA INGIN MENGUCAPKAN BANYAK TERIMAH KASIH KEPADA MBAH RINGGO BERKT BANTUANNNYA SEMUA HUTANG HUTANG SAYA SUDAH PADA LUNAS SEMUA BAHKAN SEKARAN SAYA SUDAH BISA BUKA TOKO SENDIRI,ITU SEMUA ATAS BANTUAN MBAH YG TELAH MEMBERIKAN ANKA JITUNYA KEPADA SAYA DAN ALHAMDULILLAH ITU BENER2 TERBUKTI TEMBUS..BAGI ANDA YG INGIN SEPERTI SAYA DAN YANG SANGAT MEMERLUKAN ANKA RITUAL 2D 3D 4D YANG DIJAMIN 100% TEMBUS SILAHKAN HUBUNGI MBAH RINGGO DI 085/205/213/777/
















SAYA SEKELUARGA INGIN MENGUCAPKAN BANYAK TERIMAH KASIH KEPADA MBAH RINGGO BERKT BANTUANNNYA SEMUA HUTANG HUTANG SAYA SUDAH PADA LUNAS SEMUA BAHKAN SEKARAN SAYA SUDAH BISA BUKA TOKO SENDIRI,ITU SEMUA ATAS BANTUAN MBAH YG TELAH MEMBERIKAN ANKA JITUNYA KEPADA SAYA DAN ALHAMDULILLAH ITU BENER2 TERBUKTI TEMBUS..BAGI ANDA YG INGIN SEPERTI SAYA DAN YANG SANGAT MEMERLUKAN ANKA RITUAL 2D 3D 4D YANG DIJAMIN 100% TEMBUS SILAHKAN HUBUNGI MBAH RINGGO DI 085/205/213/777/

Unknown said...

KALAU ANDA INGGIN MAU TAU IMFO TOGEL, KENAL,KAN NAMA SAYA IBU IDAH, KAMI TINGGAL DITAWAO PEKERJAAN USAHA KECI-KECI LAH, SELAMA KAMI KENAL YANG NAMANYA AKI DARMO NASIB KAMI TIDAK SEPERTI YANG DULUH… SAYA SANGAT BERTERIMA KASIH KEPADA KY DARMO BERKAT [[4,]]ANGKA YANG DI BERIKAN BELIAU ALHAMDULILLAH TEMBUS/…[[2557]]

APA LAGI NOMOR SATU, DI PUTARAN SINGAPURA SEMUA UTANG UTANG DLM KELUARGA SAYA KINI DPT TERLUNASI SEMUA,SAYA PUN KINI BISA MEMBUKA USAHA KEMBALI,WALAUPUN ITU DGN CARA PASANG TOGEL, ITU MERUPAKAN RESKI BAGI SAYA DAN KELUARGA SAYA,JADI YG SERING KALAH DLM PERMAINAN TOGEL HUBUNGI AKI/SMS KE NMR INI,082-310-143-355—KESUSAHAN ANDA DALAM MAIN
TOGEL DI,JAMIN [5] KALI PUTARAN…


[KELIK DISINI]]Terima kasih yang amat dalam kami ucapkan kepada AKI DARMO yang telah memberikan kebahagian bagi keluarga kami…berkat Beliau saya sekarang udah hidup tenang..sudah tidak di kejar-kejar hutang…Kami di berikan Angka Ritual Ghoib Dari AKI DARMO yang sangat Jitu 100%…hingga kami sekarang merasa tenang lagi…terima kasih AKI …Jika Anda ada yang merasa kesulitan masalah Nomer Toto apaka 2D.3D.4D.5D.6D.itu semua tersera anda, silahkan HBG ATAU SMS Aja Pada AKI DARMO…di nmr hpnya [082-310-143-355]pasti anda akan merasakan apa yg selama ini kami rasakan…Salam Bahagia dan Sukses..!!

DENGAN ANGKA GOIB ,ATAU ANGKA RITUAL// ANGKA MAHLUK HALUS….
SINGAPURA,HONGKONG,MALAYSIA,SYDNAI,KUDA LARI,LAOS,
MEKNUM ,STS,1-3D,PAWER TOTO 6/55,SBH 88 LOTTO 6/45 ,MEGA TOTO 6/52 ,PAWER TOTO 6/58, DAN LAIN-LAIN,ITU SEMUA TERGANTUNG PERMINTAAN KAMI…ATAU SEPESIAL DEROH 4D ANGKA BERTUA ADA PADA AKI DARMO…..
Di jamin anda pasti menang seperti saya>>>>>>
.(`’•.¸(` ‘•. ¸* ¸.•’´)¸.•’´)..
«´ Thanks sOb rOoMnyA ¨`»
..(¸. •’´(¸.•’´ * `’•.¸)`’•.¸ )..

SELAM KOMPAK SELALU….dan selamat buat yg JUPE hari ini.

pak karta malaysia said...


SAYA SEKELUARGA INGIN MENGUCAPKAN BANYAK TERIMAH KASIH KEPADA MBAH RINGGO BERKT BANTUANNNYA SEMUA HUTANG HUTANG SAYA SUDAH PADA LUNAS SEMUA BAHKAN SEKARAN SAYA SUDAH BISA BUKA TOKO SENDIRI,ITU SEMUA ATAS BANTUAN MBAH YG TELAH MEMBERIKAN ANKA JITUNYA KEPADA SAYA DAN ALHAMDULILLAH ITU BENER2 TERBUKTI TEMBUS..BAGI ANDA YG INGIN SEPERTI SAYA DAN YANG SANGAT MEMERLUKAN ANKA RITUAL 2D 3D 4D YANG DIJAMIN 100% TEMBUS SILAHKAN HUBUNGI MBAH RINGGO DI 085/205/213/777/











SAYA SEKELUARGA INGIN MENGUCAPKAN BANYAK TERIMAH KASIH KEPADA MBAH RINGGO BERKT BANTUANNNYA SEMUA HUTANG HUTANG SAYA SUDAH PADA LUNAS SEMUA BAHKAN SEKARAN SAYA SUDAH BISA BUKA TOKO SENDIRI,ITU SEMUA ATAS BANTUAN MBAH YG TELAH MEMBERIKAN ANKA JITUNYA KEPADA SAYA DAN ALHAMDULILLAH ITU BENER2 TERBUKTI TEMBUS..BAGI ANDA YG INGIN SEPERTI SAYA DAN YANG SANGAT MEMERLUKAN ANKA RITUAL 2D 3D 4D YANG DIJAMIN 100% TEMBUS SILAHKAN HUBUNGI MBAH RINGGO DI 085/205/213/777/

Yeni.Nurlina said...

SAYA IBU YENI,NURLINA INGIN BERBAGI CERITA KEPADA ANDA BAHWA SAYA INI DULUNYA ORANG YANG PALING SENSARA DIDUNIA.SETIAP HARI ISTRI SAYA SELALU MENGELUH TENTAN MASALAH EKONOMI BAHKAN KAMI PERNAH TIDAK MAKAN DALAM 1 HARIL 1 MALAM,KE ESOKAN HARINYA ADA TETANGNGA KAMI YG MEMBAWAKAN MAKANAN DAN TIDAK DISENGAJA DIA JG BERCERITA TENTAN MASALAH HIDUPNYA DULU DAN AKHIRNYA DIA MEMBERIKAN NO MBAH RORO..TIDAK BERPIKIR PANJAN SY LANSUN MENGHUBUNGI MBAH RORO DAN ALHAMDULILLAH BELIAU SANGAT MEMBANTU SAYA DAN SY SANGAT BER TERIMAKASIH KEPADA MBAH RORO ATAS BANTUANNYA YG TELAH MEMBERIKAN ANKA JITUNYA YAITU (6319) SYUKUR ALHAMDULILLAH BERHASIL DAN KINI SAYA SANGAT BAHAGIA MELIHAT KEHIDUPAN KELUARGA SAYA YG SUDAH JAUH LEBIH BAIK DARI SEBELUMNYA DAN MEREKA JUGA TDK PERNAH LAGI MENGELUH MASALAH KEUWANGN,,KAMI JG SUDAH BERENCANA INGIN MEMBUKA TOKO SENDIRI ITU SEMUA BERKAT BANTUAN MBAH RORO DAN BAGI ANDA YG INGIN SEPERTI SAYA YG MEMERLUKAN BANTUAN MBAH RORO SILAHKAN HUB 0-8-5-3-9-4-5-3-7-5-7-8 SILAHKAN ANDA MEMBUKTIKANNYA SENDIRI.????MAKASIH….http://wwwprediksimbahjenggo.webs.com





PREDIKSI TOGEL SINGAPURA KAMIS HARI INI

SGP KAMIS 06-Fec-2014
=================

** ANGKA KONTROL **
5435

** ANGKA IKUT **
1247

** SYAIR SGP KAMIS **
DISINI

AWASS,,!! SERING NYEBUR DILUMPUR LAPINDO

??????




Unknown said...

MAAF SAYA HANYA INGIN BERBAGI CERITA KEPADA ANDA YANG PENGGILAH TOGEL KALAU , AWALNYA ITU SAYA CUMA PENJUAL KERUPUK KELILIN YANG PENDAPATANNYA TIDAK SEBERAPA., SAYA PUNYA TIGA,ANAK DAN HUTAN KAMI PUN TAMBAH MENUMPUK, ANAK JUGA BUTUH BIAYA SEKOLAH,DAN AKHIRNYA SAYA DIPERTEMUKAN DENGAN NOMOR HP MBAH SURYO , DAN MENCERITAKAN SEMUANYA,AKHIRNYA SAYA DI KASIH ANGKA GHOIB 4D, ALHAMDULILLAH ITU PUN TEMBUS,DAN DENGAN ADANYA BANTUAN DARI MBAH SURYO , SEMUA HUTANG SAHUTANG SAYA SUDAH PADA LUNAS SEMUA BAHKAN SEKARANG INI SAYA SUDAH BUKA USAHA SENDIRI!!! INI KISAH NYATA DARI SAYA DAN SILAHKAN ANDA BUKTIKAN. SENDIRI,BAGI YANG BERMINAT HUB MBAH SURYO DI NOMOR INI ; 082-342-997-888

Post a Comment

Share & Enjoy

Twitter Delicious Facebook Digg Stumbleupon Favorites More