Hi Koni: I must have misunderstood what you adviced me to do because I couldn't get it working on what you suggested. This is what I did:
I added the logic tag in my jsp: <logic:equal name="SearchFormBean" property="result" scope="request" value="ok"> <javascript:window.open("", "myWindow", 'toolbar,width=450,height=500') </logic:equal> ===> the rest of this jsp file is just a table to display my data. I added a new property "result" into my formBean and also its getter and setter. private String result; Then in my Action class I added the following call to the setter when my data are retrieved successfully: if (formBean.isMainReportAction()) { this.validateAction(formBean, request, errors); // validate search filters if(errors.empty()) { retrieve data for main report and display main report formBean.setResult("ok"); // IF EVERYTHIANG IS OK, SET result="ok" so jsp will pop up new wdw } else displayed error message in the original window } But when I ran this, no window is pop-up. The data is still displaying in the original window. Did I miss something that you tried to tell me? Thx... Pat -----Original Message----- From: Koni [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 12, 2003 7:00 AM To: [EMAIL PROTECTED] Subject: Re: Pop-up a window on Submit Hi Pat I solved the validation problem (your question 2) as described in many examples: In struts-config.xml, add 'input' to your action mapping. ... <action path="/app/report/Search" type="com.test.action.report.ReportAction" name="SearchFormBean scope="request" validate="false" input="/thePage.jsp"> // <---- !! ... MyAction.java: ... ActionErrors errors = new ActionErrors(); if ( ! formBean.isMainReportAction() ) { errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("error.my.error.message")); } // Report any errors we have discovered back to the original form if (!errors.isEmpty()) { saveErrors(request, errors); // go back to the input page return new ActionForward(mapping.getInput()); } ... thePage.jsp: Example of displaying errors in .jsp ... <logic:messagesPresent> <UL> <html:messages id="errors"> <LI><bean:write name="errors"/></li> </html:messages> </ul> </logic:messagesPresent> ... You could solve your pop-up problem with <logic:equal> in your .jsp! <logic:equal name="myForm" property="result" scope="request" value="ok"> <javascript:open.your.pop.up.some.how> </logic:equal> Hope it helps. Koni >Au-Yeung, Stella H wrote: > Hi: > The bottom of my Search.jsp has two buttons. They are for displaying > different report (a Main report and a Procedure Summary): > > <html:submit property="mainReport"><bean:message > key="button.mainReport"/></html:submit> > <html:submit property="procedureSummary"><bean:message > key="button.procedureSummary"/></html:submit> > > In my Struts Action class ReportAction I do the following: > if (formBean.isMainReportAction()) > { > this.validateAction(formBean, request, errors); // validate search > filters > if(errors.empty()) > retrieve data for main report and display main report > else > displayed error message > } > else if (formBean.isProcedureSummaryAction()) > { > this.validateAction(formBean, request, errors); // validate search > filters > if(errors.empty()) > retrieve data for procedure summary report > << forward to the template "ProcSummTemplate" > else > displayed error message > } > > My struts-config file sort of like this: > <global-forwards> > <forward name="ProcSummTemplate" > path="/app/report/ProcedureSummary.jsp"/> > </global-forwards> > > <action path="/app/report/Search" > type="com.test.action.report.ReportAction" > name="SearchFormBean" > scope="request" > validate="false"> > <forward name="Content" path="/app/report/MainReport.jsp"/> > <forward name="ContentError" path="/app/report/Search.jsp"/> > </action> > > All the above works fine, but now I need to enhance it to do these: > - If there are no validation errors, pop-up a new window to display the > selected report (MainReport.jsp or ProcedureSummary.jsp) > - If there are validation errors, stay on the same window to display > validation messages in Search.jsp so user can reenter search filters. > My questions are: > 1) How do I pop up a new window with the <html:submit> tag? Since I cannot > do onSubmit()="return popUpAWindow()" inside the <html:submit> tags > 2) How do I force Struts to stay in the same window if there are validation > errors, otherwise do the pop-up? My validation method is in the Action class > and not a javascript function. > > Thanks in advance..... > Pat > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]