Not sure you wanted to post this to d...@ofbiz mailing list!!!!

Marc Morin
Emforium Group Inc. 
ALL-IN Software
519-772-6824 ext 201 
[email protected] 

----- "Robert Morley" <[email protected]> wrote:

> We ran into a problem where we have now properly modeled all  
> parameters to controller requests with the "parameter" element; for  
> example here is a properly modeled link ...
> 
>          <menu-item name="Items" title="${uiLabelMap.Items}">
>              <link target="ViewSalesOrder">
>               <parameter param-name="orderId" from- 
> field="parameters.orderId"/>
>              </link>
>          </menu-item>
> 
> What ofbiz does when it attempts to render this link, is determine if 
> 
> it should render it as an anchor or with a hidden form.  The  
> determining factor here is if the controller request "ViewSalesOrder" 
> 
> has an event defined.  If it has an event, it must render as a hidden 
> 
> form for security reasons.  In this case, ViewSalesOrder will call an 
> 
> event to properly create and save the ShoppingCart object into the  
> session.  As a result, we now render this as a POST instead of a GET 
> 
> (when the parameters were defined as query string arguments).
> 
> After this happens, there may be a number of things that happen to the
>  
> page that require us to do a page refresh.  This is typically done as 
> 
> part of a modal box operation.  What we had done in the past was use 
> 
> the document.location.href to refresh the page.  Now that these  
> navigation links are rendered as POSTs this no longer works, and a  
> number of bugs had been created around "missing orderId" and similar 
> 
> problems as part of that refresh.
> 
> Our solution right now was to fix how we do a refresh page.  I have  
> created a "reloadPage" javascript snippet that gets rendered on all  
> Emforium themed pages in the footer.  This uses the request to build a
>  
> proper request to reload the page with the url, parameters, and  
> request method.  The modal box inclusion now uses this function  
> instead of its own location.href refreshing mechanism.  A number of  
> parameters that were setting this success function directly have been 
> 
> removed in favor of this new method.
> 
> This was checked in as part of revision 13393 and has resolved a few 
> 
> tickets such as EMF-3403.
> 
> There should be no direct developer impact.  After an svn refresh you 
> 
> may be assigned tickets that were related to this problem and have now
>  
> been fixed.  Please let me know if you have any questions or
> concerns.
> 
> 
> Robert Morley
> Senior Software Developer
> Emforium Group Inc.
> ALL-IN Softwareâ„¢
> 519-772-6824 ext 220
> [email protected]

Reply via email to