Frank, Nothing jumps out at me from skimming over that struts config, other than this thought: the new Struts 1.2.4 wildcard mapping might make that config file much more readable. :(
Regards, David -----Original Message----- From: Frank W. Zammetti [mailto:[EMAIL PROTECTED] Sent: Friday, October 22, 2004 7:35 PM To: Struts Users Mailing List Subject: Re: Request parameters not making it to Actions? Hi David, Nope, no redirects anywhere. When the NPE's occur, as near as I can tell, only some of them are missing (which actually makes Craig's suggestion more likely, maybe I missed an error path through the code)... I do dump all the request parameters to the log on every request (don't worry, that's a config parameter that can be turned on and off real-time, I'm not crazy enough to leave it on all the time :) ). Here's my config file... Note that I replaced the name of the application with myapp and the name of the company with mycompany... Not that I think it would have been any big deal to leave them as-is, I figure better safe then sorry when it comes to matters of potential confidentiality violations... Also, keep in mind this is converted from a non-Struts application, so some of what is done here naybe isn't what I'd normally do but was the easiest way to make the conversion happen. <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"> <struts-config> <global-forwards> <forward name="reload" path="/jsp/reloadSystem.jsp" /> <forward name="exception" path="/jsp/exception.jsp" /> </global-forwards> <action-mappings> <!-- ********************************************************************** Web Services *************************************************************************** --> <!-- All Web Service requests are targeted to this entry --> <action path="/myappWebServices" type="com.mycompany.myapp.actions.WebServicesAction" /> <!-- ********************************************************************** Image Server *************************************************************************** --> <!-- This is called to server a BLOB from the database --> <action path="/app/BLOBServer" type="com.mycompany.myapp.actions.BLOBServerAction" /> <!-- ********************************************************************** API *************************************************************************** --> <!-- Called to load the API frame at system startup --> <action path="/app/loadAPI" type="com.mycompany.myapp.actions.APIAction" > <forward name="defaultForward" path="/jsp/api.jsp" /> </action> <!-- ********************************************************************** Logon *************************************************************************** --> <!-- Called from the Logon page when user tried to logon --> <action path="/app/logon" type="com.mycompany.myapp.actions.LogonAction"> <forward name="logonOK" path="/jsp/logonOK.jsp" /> </action> <!-- Called to change a user's password --> <action path="/app/changePassword" type="com.mycompany.myapp.actions.ChangePasswordAction" /> <!-- ********************************************************************** Log off *************************************************************************** --> <!-- Called from the Home page to log off the user --> <action path="/app/logoff" type="com.mycompany.myapp.actions.LogoffAction" > <forward name="defaultForward" path="/jsp/logoff.jsp" /> </action> <!-- ********************************************************************** Home *************************************************************************** --> <!-- Called to show the Home page --> <action path="/app/home" type="com.mycompany.myapp.actions.HomeAction"> <forward name="defaultForward" path="/jsp/home.jsp" /> </action> <!-- Called when a new client is selected from the drop-down --> <action path="/app/changeClient" type="com.mycompany.myapp.actions.ChangeClientAction"> <forward name="defaultForward" path="/jsp/home.jsp" /> </action> <!-- ********************************************************************** Menu: myapp *************************************************************************** --> <!-- --> <action path="/app/menumyappCreatemyapp" type="com.mycompany.myapp.actions.myappFindAccountAction"> <forward name="defaultForward" path="/jsp/myappFindAccount.jsp" /> </action> <!-- --> <action path="/app/menumyappRecallmyapp" type="com.mycompany.myapp.actions.RecallmyappAction"> <forward name="defaultForward" path="/jsp/recallmyapp.jsp" /> </action> <!-- --> <action path="/app/menumyappCalloutReasonQueue" type="com.mycompany.myapp.actions.CalloutQueuesAction"> <forward name="defaultForward" path="/jsp/calloutQueues.jsp" /> </action> <!-- --> <action path="/app/menumyappCalloutResponseQueue" type="com.mycompany.myapp.actions.CalloutQueuesAction"> <forward name="defaultForward" path="/jsp/calloutQueues.jsp" /> </action> <!-- --> <action path="/app/menumyappCheckProcessing" type="com.mycompany.myapp.actions.CPFindmyappAction"> <forward name="defaultForward" path="/jsp/cpFindmyapp.jsp" /> </action> <!-- ********************************************************************** Menu: Administration *************************************************************************** --> <!-- Called to show the Administration: Business Calendar screen --> <action path="/app/menuAdminBusinessCalendar" type="com.mycompany.myapp.actions.AdminBusinessCalendarAction"> <forward name="defaultForward" path="/jsp/adminBusinessCalendar.jsp" /> </action> <!-- --> <action path="/app/menuAdminClients" type="com.mycompany.myapp.actions.AdminClientsAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/menuAdminDeliveryFirms" type="com.mycompany.myapp.actions.AdminDeliveryFirmsAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirms.jsp" /> </action> <!-- --> <action path="/app/menuAdminDeliveryFirmMasters" type="com.mycompany.myapp.actions.AdminDeliveryFirmMastersAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirmMasters.jsp" /> </action> <!-- --> <action path="/app/menuAdminFunds" type="com.mycompany.myapp.actions.AdminFundsAction"> <forward name="defaultForward" path="/jsp/adminFunds.jsp" /> </action> <!-- --> <action path="/app/menuAdminUsers" type="com.mycompany.myapp.actions.AdminUsersAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- --> <action path="/app/menuAdminSystemMessage" type="com.mycompany.myapp.actions.AdminSystemMessageAction"> <forward name="defaultForward" path="/jsp/adminSystemMessage.jsp" /> </action> <!-- --> <action path="/app/menuAdminSystemControl" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/menuAdminUserGroups" type="com.mycompany.myapp.actions.AdminUserGroupsAction"> <forward name="defaultForward" path="/jsp/adminUserGroups.jsp" /> </action> <!-- ********************************************************************** Menu: Management *************************************************************************** --> <!-- --> <action path="/app/menuManagementLetterProduction" type="com.mycompany.myapp.actions.ManagementLetterProductionAction"> <forward name="defaultForward" path="/jsp/managementLetterProduction.jsp" /> </action> <!-- --> <action path="/app/menuManagementCheckProduction" type="com.mycompany.myapp.actions.ManagementCheckProductionAction"> <forward name="defaultForward" path="/jsp/managementCheckProduction.jsp" /> </action> <!-- --> <action path="/app/menuManagementCheckMaintenance" type="com.mycompany.myapp.actions.ManagementCheckMaintenanceAction"> <forward name="defaultForward" path="/jsp/managementCheckMaintenance.jsp" /> </action> <!-- --> <action path="/app/menuManagementManagementReports" type="com.mycompany.myapp.actions.ManagementManagementReportsAction"> <forward name="defaultForward" path="/jsp/managementManagementReports.jsp" /> </action> <!-- --> <action path="/app/menuManagementMessageOfTheDay" type="com.mycompany.myapp.actions.ManagementMessageOfTheDayAction"> <forward name="defaultForward" path="/jsp/managementMessageOfTheDay.jsp" /> </action> <!-- ********************************************************************** Menu: System *************************************************************************** --> <!-- --> <action path="/app/menuSystemAbout" type="com.mycompany.myapp.actions.SystemAboutAction"> <forward name="defaultForward" path="/jsp/systemAbout.jsp" /> </action> <!-- ********************************************************************** Administration: Business Calendar *************************************************************************** --> <!-- Called to change the year being worked with on the Administration: Business Calendar screen --> <action path="/app/adminBusinessCalendarChangeYear" type="com.mycompany.myapp.actions.AdminBusinessCalendarAction"> <forward name="defaultForward" path="/jsp/adminBusinessCalendar.jsp" /> </action> <!-- Called to save the non-business days for the year being worked with on the Administration: Business Calendar screen --> <action path="/app/adminBusinessCalendarSave" type="com.mycompany.myapp.actions.AdminBusinessCalendarSaveAction"> <forward name="defaultForward" path="/jsp/adminBusinessCalendar.jsp" /> </action> <!-- ********************************************************************** Administration: Clients *************************************************************************** --> <!-- --> <action path="/app/adminClientsFind" type="com.mycompany.myapp.actions.AdminClientsFindAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/adminClientsGetInfo" type="com.mycompany.myapp.actions.AdminClientsGetInfoAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/adminClientsDelete" type="com.mycompany.myapp.actions.AdminClientsDeleteAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/adminClientsSave" type="com.mycompany.myapp.actions.AdminClientsSaveAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/adminClientsManagementCompanyAdd" type="com.mycompany.myapp.actions.AdminClientsManagementCompanyAddAction"> <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- --> <action path="/app/adminClientsManagementCompanyDelete" type="com.mycompany.myapp.actions.AdminClientsManagementCompanyDeleteAction" > <forward name="defaultForward" path="/jsp/adminClients.jsp" /> </action> <!-- ********************************************************************** Administration: Delivery Firms *************************************************************************** --> <!-- --> <action path="/app/adminDeliveryFirmsFind" type="com.mycompany.myapp.actions.AdminDeliveryFirmsFindAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirms.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmsGetInfo" type="com.mycompany.myapp.actions.AdminDeliveryFirmsGetInfoAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirms.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmsDelete" type="com.mycompany.myapp.actions.AdminDeliveryFirmsDeleteAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirms.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmsSave" type="com.mycompany.myapp.actions.AdminDeliveryFirmsSaveAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirms.jsp" /> </action> <!-- ********************************************************************** Administration: Delivery Firm Masters *************************************************************************** --> <!-- --> <action path="/app/adminDeliveryFirmMastersFind" type="com.mycompany.myapp.actions.AdminDeliveryFirmMastersFindAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirmMasters.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmMastersGetInfo" type="com.mycompany.myapp.actions.AdminDeliveryFirmMastersGetInfoAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirmMasters.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmMastersDelete" type="com.mycompany.myapp.actions.AdminDeliveryFirmMastersDeleteAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirmMasters.jsp" /> </action> <!-- --> <action path="/app/adminDeliveryFirmMastersSave" type="com.mycompany.myapp.actions.AdminDeliveryFirmMastersSaveAction"> <forward name="defaultForward" path="/jsp/adminDeliveryFirmMasters.jsp" /> </action> <!-- ********************************************************************** Administration: Funds *************************************************************************** --> <!-- --> <action path="/app/adminFundsFind" type="com.mycompany.myapp.actions.AdminFundsFindAction"> <forward name="defaultForward" path="/jsp/adminFunds.jsp" /> </action> <!-- --> <action path="/app/adminFundsGetInfo" type="com.mycompany.myapp.actions.AdminFundsGetInfoAction"> <forward name="defaultForward" path="/jsp/adminFunds.jsp" /> </action> <!-- --> <action path="/app/adminFundsDelete" type="com.mycompany.myapp.actions.AdminFundsDeleteAction"> <forward name="defaultForward" path="/jsp/adminFunds.jsp" /> </action> <!-- --> <action path="/app/adminFundsSave" type="com.mycompany.myapp.actions.AdminFundsSaveAction"> <forward name="defaultForward" path="/jsp/adminFunds.jsp" /> </action> <!-- ********************************************************************** Administration: Users *************************************************************************** --> <!-- --> <action path="/app/adminUsersFind" type="com.mycompany.myapp.actions.AdminUsersFindAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- --> <action path="/app/adminUsersGetInfo" type="com.mycompany.myapp.actions.AdminUsersGetInfoAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- --> <action path="/app/adminUsersResetPassword" type="com.mycompany.myapp.actions.AdminUsersResetPasswordAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- --> <action path="/app/adminUsersUnlockAccount" type="com.mycompany.myapp.actions.AdminUsersUnlockAccountAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- --> <action path="/app/adminUsersSave" type="com.mycompany.myapp.actions.AdminUsersSaveAction"> <forward name="defaultForward" path="/jsp/adminUsers.jsp" /> </action> <!-- ********************************************************************** Administration: User Groups *************************************************************************** --> <!-- --> <action path="/app/adminUserGroupsFind" type="com.mycompany.myapp.actions.AdminUserGroupsFindAction"> <forward name="defaultForward" path="/jsp/adminUserGroups.jsp" /> </action> <!-- --> <action path="/app/adminUserGroupsGetInfo" type="com.mycompany.myapp.actions.AdminUserGroupsGetInfoAction"> <forward name="defaultForward" path="/jsp/adminUserGroups.jsp" /> </action> <!-- --> <action path="/app/adminUserGroupsDelete" type="com.mycompany.myapp.actions.AdminUserGroupsDeleteAction"> <forward name="defaultForward" path="/jsp/adminUserGroups.jsp" /> </action> <!-- --> <action path="/app/adminUserGroupsSave" type="com.mycompany.myapp.actions.AdminUserGroupsSaveAction"> <forward name="defaultForward" path="/jsp/adminUserGroups.jsp" /> </action> <!-- ********************************************************************** Administration: System Message *************************************************************************** --> <!-- --> <action path="/app/adminSystemMessageClear" type="com.mycompany.myapp.actions.AdminSystemMessageClearAction"> <forward name="defaultForward" path="/jsp/adminSystemMessage.jsp" /> </action> <!-- --> <action path="/app/adminSystemMessageSave" type="com.mycompany.myapp.actions.AdminSystemMessageSaveAction"> <forward name="defaultForward" path="/jsp/adminSystemMessage.jsp" /> </action> <!-- ********************************************************************** Administration: System Control *************************************************************************** --> <!-- --> <action path="/app/adminSystemControlRunThreadDBInit" type="com.mycompany.myapp.actions.AdminSystemControlRunThreadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRunThreadAging" type="com.mycompany.myapp.actions.AdminSystemControlRunThreadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRunThreadManagersStatistics" type="com.mycompany.myapp.actions.AdminSystemControlRunThreadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRunThreadMemoResender" type="com.mycompany.myapp.actions.AdminSystemControlRunThreadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSave" type="com.mycompany.myapp.actions.AdminSystemControlSaveAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlResetStatistics" type="com.mycompany.myapp.actions.AdminSystemControlResetStatisticsAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlLogoUpload" type="com.mycompany.myapp.actions.AdminSystemControlLogoUploadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSignatureUpload" type="com.mycompany.myapp.actions.AdminSystemControlSignatureUploadAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlLogoDelete" type="com.mycompany.myapp.actions.AdminSystemControlLogoDeleteAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSignatureDelete" type="com.mycompany.myapp.actions.AdminSystemControlSignatureDeleteAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSelectManagementReport" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlDeleteManagementReport" type="com.mycompany.myapp.actions.AdminSystemControlMaintManagementReportAct ion"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlUpdateManagementReport" type="com.mycompany.myapp.actions.AdminSystemControlMaintManagementReportAct ion"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlInsertManagementReport" type="com.mycompany.myapp.actions.AdminSystemControlMaintManagementReportAct ion"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRefreshStatistics" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRefreshThreads" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlRefreshActiveUsers" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSelectCheckTemplate" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlDeleteCheckTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintCheckTemplateAction "> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlUpdateCheckTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintCheckTemplateAction "> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlInsertCheckTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintCheckTemplateAction "> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlSelectLetterTemplate" type="com.mycompany.myapp.actions.AdminSystemControlAction"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlDeleteLetterTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintLetterTemplateActio n"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlUpdateLetterTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintLetterTemplateActio n"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- --> <action path="/app/adminSystemControlInsertLetterTemplate" type="com.mycompany.myapp.actions.AdminSystemControlMaintLetterTemplateActio n"> <forward name="defaultForward" path="/jsp/adminSystemControl.jsp" /> </action> <!-- ********************************************************************** Management: Management Reports *************************************************************************** --> <!-- --> <action path="/app/managementManagementReportsParameters" type="com.mycompany.myapp.actions.ManagementManagementReportsParametersActio n"> <forward name="defaultForward" path="/jsp/managementManagementReportsParameters.jsp" /> </action> <!-- --> <action path="/app/managementManagementReportsGenerate" type="com.mycompany.myapp.actions.ManagementManagementReportsGenerateAction" > </action> <!-- ********************************************************************** Management: Letter Production *************************************************************************** --> <!-- --> <action path="/app/managementLetterProductionLoad" type="com.mycompany.myapp.actions.ManagementLetterProductionLoadAction"> <forward name="defaultForward" path="/jsp/managementLetterProduction.jsp" /> </action> <!-- --> <action path="/app/managementLetterProductionGenerate" type="com.mycompany.myapp.actions.ManagementLetterProductionGenerateAction"> </action> <!-- ********************************************************************** Management: Check Production *************************************************************************** --> <!-- --> <action path="/app/managementCheckProductionLoad" type="com.mycompany.myapp.actions.ManagementCheckProductionLoadAction"> <forward name="defaultForward" path="/jsp/managementCheckProduction.jsp" /> </action> <!-- --> <action path="/app/managementCheckProductionGenerate" type="com.mycompany.myapp.actions.ManagementCheckProductionGenerateAction"> </action> <!-- ********************************************************************** Management: Check Maintenance *************************************************************************** --> <!-- --> <action path="/app/managementCheckMaintenanceFind" type="com.mycompany.myapp.actions.ManagementCheckMaintenanceFindAction"> <forward name="defaultForward" path="/jsp/managementCheckMaintenance.jsp" /> </action> <!-- --> <action path="/app/managementCheckMaintenanceGetInfo" type="com.mycompany.myapp.actions.ManagementCheckMaintenanceGetInfoAction"> <forward name="defaultForward" path="/jsp/managementCheckMaintenance.jsp" /> </action> <!-- --> <action path="/app/managementCheckMaintenanceDelete" type="com.mycompany.myapp.actions.ManagementCheckMaintenanceDeleteAction"> <forward name="defaultForward" path="/jsp/managementCheckMaintenance.jsp" /> </action> <!-- ********************************************************************** Management: Message Of The Day *************************************************************************** --> <!-- --> <action path="/app/managementMessageOfTheDayClear" type="com.mycompany.myapp.actions.ManagementMessageOfTheDayClearAction"> <forward name="defaultForward" path="/jsp/managementMessageOfTheDay.jsp" /> </action> <!-- --> <action path="/app/managementMessageOfTheDaySave" type="com.mycompany.myapp.actions.ManagementMessageOfTheDaySaveAction"> <forward name="defaultForward" path="/jsp/managementMessageOfTheDay.jsp" /> </action> <!-- ********************************************************************** Recall myapp *************************************************************************** --> <!-- --> <action path="/app/recallmyappFind" type="com.mycompany.myapp.actions.RecallmyappFindAction"> <forward name="defaultForward" path="/jsp/recallmyapp.jsp" /> </action> <!-- --> <action path="/app/recallmyappGetInfo" type="com.mycompany.myapp.actions.RecallmyappGetInfoAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myappFindAccount *************************************************************************** --> <!-- --> <action path="/app/myappFindAccountContinue" type="com.mycompany.myapp.actions.myappFindAccountContinueAction"> <forward name="defaultForward" path="/jsp/myappVerifyAccount.jsp" /> <forward name="myappFindAccountAccountNotFound" path="/jsp/myappFindAccount.jsp" /> </action> <!-- ********************************************************************** myappVerifyAccount *************************************************************************** --> <!-- --> <action path="/app/myappVerifyAccountContinue" type="com.mycompany.myapp.actions.myappVerifyAccountContinueAction"> <forward name="defaultForward" path="/jsp/myappDeliveryFirm.jsp" /> </action> <!-- --> <action path="/app/myappVerifyAccountRefresh" type="com.mycompany.myapp.actions.myappFindAccountContinueAction"> <forward name="defaultForward" path="/jsp/myappVerifyAccount.jsp" /> </action> <!-- --> <action path="/app/myappVerifyAccountBack" type="com.mycompany.myapp.actions.myappFindAccountAction"> <forward name="defaultForward" path="/jsp/myappFindAccount.jsp" /> </action> <!-- --> <action path="/app/myappVerifyAccountSideNav" type="com.mycompany.myapp.actions.myappVerifyAccountSideNavAction"> <forward name="deliveryFirm" path="/jsp/myappDeliveryFirm.jsp" /> <forward name="transferDetails" path="/jsp/myappTransferDetails.jsp" /> <forward name="allocation" path="/jsp/myappAllocation.jsp" /> <forward name="summary" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myappDeliveryFirm *************************************************************************** --> <!-- --> <action path="/app/myappDeliveryFirmContinue" type="com.mycompany.myapp.actions.myappDeliveryFirmContinueAction"> <forward name="defaultForward" path="/jsp/myappTransferDetails.jsp" /> </action> <!-- --> <action path="/app/myappDeliveryFirmBack" type="com.mycompany.myapp.actions.myappVerifyAccountAction"> <forward name="defaultForward" path="/jsp/myappVerifyAccount.jsp" /> </action> <!-- --> <action path="/app/myappDeliveryFirmFind" type="com.mycompany.myapp.actions.myappDeliveryFirmFindAction"> <forward name="defaultForward" path="/jsp/myappDeliveryFirm.jsp" /> </action> <!-- --> <action path="/app/myappDeliveryFirmGetInfo" type="com.mycompany.myapp.actions.myappDeliveryFirmGetInfoAction"> <forward name="defaultForward" path="/jsp/myappDeliveryFirm.jsp" /> </action> <!-- --> <action path="/app/myappDeliveryFirmSideNav" type="com.mycompany.myapp.actions.myappDeliveryFirmSideNavAction"> <forward name="verifyAccount" path="/jsp/myappVerifyAccount.jsp" /> <forward name="transferDetails" path="/jsp/myappTransferDetails.jsp" /> <forward name="allocation" path="/jsp/myappAllocation.jsp" /> <forward name="summary" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myappTransferDetails *************************************************************************** --> <!-- --> <action path="/app/myappTransferDetailsContinue" type="com.mycompany.myapp.actions.myappTransferDetailsContinueAction"> <forward name="defaultForward" path="/jsp/myappAllocation.jsp" /> </action> <!-- --> <action path="/app/myappTransferDetailsBack" type="com.mycompany.myapp.actions.myappDeliveryFirmAction"> <forward name="defaultForward" path="/jsp/myappDeliveryFirm.jsp" /> </action> <!-- --> <action path="/app/myappTransferDetailsSideNav" type="com.mycompany.myapp.actions.myappTransferDetailsSideNavAction"> <forward name="verifyAccount" path="/jsp/myappVerifyAccount.jsp" /> <forward name="deliveryFirm" path="/jsp/myappDeliveryFirm.jsp" /> <forward name="allocation" path="/jsp/myappAllocation.jsp" /> <forward name="summary" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myappAllocation *************************************************************************** --> <!-- --> <action path="/app/myappAllocationContinue" type="com.mycompany.myapp.actions.myappAllocationContinueAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/myappAllocationBack" type="com.mycompany.myapp.actions.myappTransferDetailsAction"> <forward name="defaultForward" path="/jsp/myappTransferDetails.jsp" /> </action> <!-- --> <action path="/app/myappAllocationSideNav" type="com.mycompany.myapp.actions.myappAllocationSideNavAction"> <forward name="verifyAccount" path="/jsp/myappVerifyAccount.jsp" /> <forward name="deliveryFirm" path="/jsp/myappDeliveryFirm.jsp" /> <forward name="transferDetails" path="/jsp/myappTransferDetails.jsp" /> <forward name="summary" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myapp Summary *************************************************************************** --> <!-- --> <action path="/app/myappSummaryBack" type="com.mycompany.myapp.actions.myappAllocationAction"> <forward name="defaultForward" path="/jsp/myappAllocation.jsp" /> </action> <!-- --> <action path="/app/myappSummaryCancel" type="com.mycompany.myapp.actions.myappSummaryCancelAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/myappSummaryDelete" type="com.mycompany.myapp.actions.myappSummaryDeleteAction"> <forward name="defaultForward" path="/app/home.myapp" /> </action> <!-- --> <action path="/app/myappSummarySaveCreate" type="com.mycompany.myapp.actions.myappSummarySaveAction"> <forward name="defaultForward" path="/jsp/myappFindAccount.jsp" /> </action> <!-- --> <action path="/app/myappSummarySaveMaintenance" type="com.mycompany.myapp.actions.myappSummarySaveAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/myappSummaryFollowUpCallSave" type="com.mycompany.myapp.actions.myappSummaryFollowUpCallSaveAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/myappSummarySideNav" type="com.mycompany.myapp.actions.myappSummarySideNavAction"> <forward name="verifyAccount" path="/jsp/myappVerifyAccount.jsp" /> <forward name="deliveryFirm" path="/jsp/myappDeliveryFirm.jsp" /> <forward name="transferDetails" path="/jsp/myappTransferDetails.jsp" /> <forward name="allocation" path="/jsp/myappAllocation.jsp" /> </action> <!-- --> <action path="/app/myappSummaryCallout" type="com.mycompany.myapp.actions.myappSummaryCalloutAction"> <forward name="defaultForward" path="/jsp/callout.jsp" /> </action> <!-- --> <action path="/app/myappSummaryCalloutSave" type="com.mycompany.myapp.actions.myappSummaryCalloutSaveAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/myappSummaryMemo" type="com.mycompany.myapp.actions.myappSummaryMemoAction"> <forward name="defaultForward" path="/jsp/adHocMemoInput.jsp" /> </action> <!-- --> <action path="/app/myappSummaryMemoSave" type="com.mycompany.myapp.actions.myappSummaryMemoSaveAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** myapp Maintenance *************************************************************************** --> <!-- --> <action path="/app/maintenancemyappRecall" type="com.mycompany.myapp.actions.RecallmyappGetInfoAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- ********************************************************************** cpFindmyapp *************************************************************************** --> <!-- --> <action path="/app/cpFindmyappFind" type="com.mycompany.myapp.actions.CPFindmyappFindAction"> <forward name="defaultForward" path="/jsp/cpFindmyapp.jsp" /> </action> <!-- --> <action path="/app/cpFindmyappGetInfo" type="com.mycompany.myapp.actions.CPFindmyappGetInfoAction"> <forward name="defaultForward" path="/jsp/cpDetails.jsp" /> </action> <!-- ********************************************************************** cpDetails *************************************************************************** --> <!-- --> <action path="/app/cpDetailsContinue" type="com.mycompany.myapp.actions.CPDetailsContinueAction"> <forward name="defaultForward" path="/jsp/cpCheckDeposit.jsp" /> </action> <!-- --> <action path="/app/cpDetailsShowCallout" type="com.mycompany.myapp.actions.CPDetailsShowCalloutAction"> <forward name="defaultForward" path="/jsp/callout.jsp" /> </action> <!-- --> <action path="/app/cpDetailsMemo" type="com.mycompany.myapp.actions.CPDetailsMemoAction"> <forward name="defaultForward" path="/jsp/adHocMemoInput.jsp" /> </action> <!-- --> <action path="/app/cpDetailsMemoSave" type="com.mycompany.myapp.actions.CPDetailsMemoSaveAction"> <forward name="defaultForward" path="/jsp/cpDetails.jsp" /> </action> <!-- ********************************************************************** cpCheckDeposit *************************************************************************** --> <!-- --> <action path="/app/cpCheckDepositBack" type="com.mycompany.myapp.actions.CPDetailsAction"> <forward name="defaultForward" path="/jsp/cpDetails.jsp" /> </action> <!-- --> <action path="/app/cpCheckDepositCallout" type="com.mycompany.myapp.actions.CPCheckDepositCalloutAction"> <forward name="defaultForward" path="/jsp/callout.jsp" /> </action> <!-- --> <action path="/app/cpCheckDepositCalloutSave" type="com.mycompany.myapp.actions.CPCheckDepositCalloutSaveAction"> <forward name="defaultForward" path="/jsp/cpFindmyapp.jsp" /> </action> <!-- --> <action path="/app/cpCheckDepositOverride" type="com.mycompany.myapp.actions.CPCheckDepositOverrideAction"> <forward name="defaultForward" path="/jsp/cpOverrideReasonFundSelect.jsp" /> </action> <!-- --> <action path="/app/cpCheckDepositContinue" type="com.mycompany.myapp.actions.CPCheckDepositContinueAction"> <forward name="defaultForward" path="/jsp/cpDisbursement.jsp" /> </action> <!-- ********************************************************************** cpDisbursement *************************************************************************** --> <!-- --> <action path="/app/cpDisbursementBackCheckDeposit" type="com.mycompany.myapp.actions.CPCheckDepositAction"> <forward name="defaultForward" path="/jsp/cpCheckDeposit.jsp" /> </action> <!-- --> <action path="/app/cpDisbursementBackOverrideAllocation" type="com.mycompany.myapp.actions.CPOverrideAllocationAction"> <forward name="defaultForward" path="/jsp/cpOverrideAllocation.jsp" /> </action> <!-- --> <action path="/app/cpDisbursementSaveType" type="com.mycompany.myapp.actions.CPDisbursementSaveTypeAction"> <forward name="defaultForward" path="/jsp/cpDisbursementSaveType.jsp" /> </action> <!-- --> <action path="/app/cpDisbursementSave" type="com.mycompany.myapp.actions.CPDisbursementSaveAction"> <forward name="defaultForward" path="/jsp/cpFindmyapp.jsp" /> </action> <!-- --> <action path="/app/cpDisbursementSaveDuplicateCheck" type="com.mycompany.myapp.CPDisbursementSaveDuplicateCheckAction"> <forward name="defaultForward" path="/jsp/cpDisbursement.jsp" /> </action> <!-- --> <action path="/app/cpDisbursementAmountMismatch" type="com.mycompany.myapp.actions.CPCheckDepositAction"> <forward name="defaultForward" path="/jsp/cpCheckDeposit.jsp" /> </action> <!-- ********************************************************************** cpOverrideReasonFundSelect *************************************************************************** --> <!-- --> <action path="/app/cpOverrideReasonFundSelectBack" type="com.mycompany.myapp.actions.CPCheckDepositAction"> <forward name="defaultForward" path="/jsp/cpCheckDeposit.jsp" /> </action> <!-- --> <action path="/app/cpOverrideReasonFundSelectContinue" type="com.mycompany.myapp.actions.CPOverrideReasonFundSelectContinueAction"> <forward name="defaultForward" path="/jsp/cpOverrideAllocation.jsp" /> </action> <!-- ********************************************************************** cpOverrideAllocation *************************************************************************** --> <!-- --> <action path="/app/cpOverrideAllocationBack" type="com.mycompany.myapp.actions.CPOverrideReasonFundSelectAction"> <forward name="defaultForward" path="/jsp/cpOverrideReasonFundSelect.jsp" /> </action> <!-- --> <action path="/app/cpOverrideAllocationContinue" type="com.mycompany.myapp.actions.CPOverrideAllocationContinueAction"> <forward name="defaultForward" path="/jsp/cpDisbursement.jsp" /> </action> <!-- ********************************************************************** Callout Queues *************************************************************************** --> <!-- --> <action path="/app/openCalloutSummary" type="com.mycompany.myapp.actions.RecallmyappGetInfoAction"> <forward name="defaultForward" path="/jsp/myappSummary.jsp" /> </action> <!-- --> <action path="/app/openCalloutDoSpecial" type="com.mycompany.myapp.actions.CalloutDoSpecialAction"> <forward name="defaultForward" path="/app/menumyappCalloutResponseQueue.myapp" /> </action> <!-- --> <action path="/app/openCalloutCPCheckDeposit" type="com.mycompany.myapp.actions.CPFindmyappGetInfoAction"> <forward name="defaultForward" path="/app/openCalloutCPCheckDepositContinue.myapp" /> </action> <!-- --> <action path="/app/openCalloutCPCheckDepositContinue" type="com.mycompany.myapp.actions.CPCheckDepositCalloutAction"> <forward name="defaultForward" path="/jsp/cpCheckDeposit.jsp" /> </action> </action-mappings> <plug-in className="com.mycompany.myapp.plugins.AppInit" /> </struts-config> David G. Friedman wrote: > Frank, > > Do any of your forwards have redirect="true" in them and point to a JSP? > That would do a browser redirect to make the browser go to a JSP, resulting > in lost parameters. Any change of posting part of your struts-config.xml for > us to skim over and point anything out that looks unusual? When you get > NPE's from missing parameters, do you have other parameters that were > submitted but some that are missing? Are you log printing to be able to > verify that whenever it does happen, that only some parameters are missing > and not just all? > > Regards, > David > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: Friday, October 22, 2004 3:17 PM > To: [EMAIL PROTECTED] > Subject: Re: Request parameters not making it to Actions? > > > I should point out, before anyone calls me on it, that this is strictly an > internal app that is IE-specific (as per the overlords of the company's > orders). Therefore, there's no chance that user disabled scripting or > anything, and indeed they wouldn't have been able to even log in if they > had. So, the validations before submission are most definitely firing. I'm > convinced they aren't broke, but it's possible they could be... I'm > proceeding under the belief that they aren't though and therefore an invalid > submission is not being made at any point (unless it's a navigation problem, > i.e., back, which is still a possibility) > > -- > Frank W. Zammetti > Founder and Chief Software Architect > Omnytex Technologies > http://www.omnytex.com > > On Fri, October 22, 2004 3:10 pm, [EMAIL PROTECTED] said: > >>Hello all... I've got a strange situation that's been bugging me for a >>while. First, some quick background: >> >>I wrote an application about two years ago that was based on a proprietary >>framework that has now been converted to Struts. One of the things this >>proprietary framework was missing was the concept of ActionForms. >>Instead, when you hit your controller classes, you dealt with the Request >>object directly to get your parameters. >> >>Since as usual I had to get the conversion done in far less time than it >>should have been done in, I basically would up not really using >>ActionForms except to transfer data back to the view. In other words, no >>validation is don in the ActionForms, and they are not auto-populateed by >>Struts. My Actions still deal directly with Request, I just populate the >>ActionForm on the way out to the JSP (I intended to use the ActionForms >>more "properly" later, but that time has never presented itself). >> >>So, now I come to the issue... It seems that every now and again (average >>of about 25 times per 50,000 transaction) I get NPE's in my Actions and >>they are always because some value that was expected to be in Request is >>null. >> >>Now, the front-end does a bunch of validation (JavaScript) and I've gone >>over it a ton of times and there doesn't seem to be any way a user could >>submit a form without filling in required elements (and most of them >>should be blanks anyway, not nulls). I thought about maybe they were >>using the Back button in some crazy way, but the app opens in a new >>chromless window, so they would have to be using a keyboard shortcut. >>I've tried every crazy thing I could think of to break it, but it never >>seems to break. I have NEVER ONCE replicated one of these problems. >> >>So, my question comes down to this... has anyone ever seen a situation >>where a Struts-based app running on Tomcat (5.0.25 I believe) would "lose" >>request data, either as a fault of Struts or of Tomcat? Could it be some >>Tomcat tuning issue? (I will ask this same question on the Tomcat list, >>but I wanted to start here first). >> >>Any thoughts would be appreciated. Fortunately no one is complaining >>because the app is generally quite stable, but these once-in-a-while >>exceptions are pissing me off more than anything else! >>--------------------------------------------------------------------- >>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] > > > > > -- Frank W. Zammetti Founder and Chief Software Architect Omnytex Technologies http://www.omnytex.com --------------------------------------------------------------------- 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]