AdobeStock_455007340

Three Recent ColdFusion Hot Fixes

Home » Three Recent ColdFusion Hot Fixes

The ColdFusion team released three hot fixes recently:

8 responses to “Three Recent ColdFusion Hot Fixes”

  1. Raymond Camden Avatar
    Raymond Camden

    Nice. I missed this and I especially need the log rotation one. Is there not an email service for CF Hot Fixes?

  2. Joe Mastroianni Avatar
    Joe Mastroianni

    So they deprecated the dbvarname attribute and then un-depriacted it? Fun.

  3. Damon Cooper Avatar
    Damon Cooper

    Ray: I’ve formally requested this be setup. I agree a proactive notification service would be good (we have ot for security hotfixes, but not for general hotfixes/updaters
    Joe: yeah, it was a regression from CF5, and I felt bad about it…. 🙂 Hoipefully you’ll find it useful.
    Damon

  4. Jordan Clark Avatar
    Jordan Clark

    I just tried out hot fix hf702-52712 and I’m getting an error now when calling stored procedures because I use the free open source JTDS (v1.2) JDBC drivers.
    The error I get is:
    java.util.MissingResourceException –
    Can’t find resource for base name coldfusion/tagext/sql/StoredProcTag.FoundDbVarNameException.properties
    I’ve manually extracted the hf702-52712.jar file to examine it and indeed there is no StoredProcTag.FoundDbVarNameException.properties file.
    I know I could use the Macromedia JDBC drivers, but I prefer JTDS. I’m crossing my fingers that named parameters will work for me and I hope there is a solution to fix this hotfix so it atleast does not crippled their functionality (or possibly other JDBC drivers)
    Thanks, Jordan Clark

  5. Shigeru Avatar
    Shigeru
  6. Raymond Camden Avatar
    Raymond Camden

    To be anal – this isn’t the exact same. For example, the top entry is an article, not a product notification.

  7. janet Avatar
    janet

    can someone guess why ?
    i have posted this on Adobe forumes and many other locations , and NOBODY knows how to fix this , then it must be a BUG in coldfusion 7.0.2 !!!!!!!!1
    BEN , please Mr Ben Forta , if anyone knows what to do it must be you …
    what is the grid not working as expected ?!
    Below is a page that has a cfgrid when i submit the page the grid data is lost ? why ?????????
    the data i am talking about is the ones i add using
    the "refresh data" button not manually inserted row by row !!!
    your help is greatly appretiated …
    thanx
    *************************************************************************************************************************
    *************************************************************************************************************************
    <cfif isDefined("form.oncethrough")>
    <cfdump var="#form#">
    <cfabort>
    </cfif>
    <cfform method="post" name="slushForm" preloader="no" format="flash" width="600" timeout="500" onload="formOnLoad()">
    <cfinput type = "hidden" name="oncethrough" value = "Yes">
    <cfformitem type="script"> //Drag Drop enable for grids var overSourceItem:Boolean = false;
    var overTargetItem:Boolean = false;
    function addData()
    {
    //Add some data to the source grid gridSource.removeAll();
    gridDestination.removeAll();
    gridSource.addItem({lastName:"Smith",firstName:"Jane",phone:"(555) 555-1234"});
    gridSource.addItem({lastName:"Jones",firstName:"Jen",phone:"(555) 555-5678"});
    }
    function formOnLoad()
    {
    gridSource.dragEnabled=true;
    gridSource.multipleSelection=true;
    gridSource.addEventListener(‘dragEnter’, doDragEnter);
    gridSource.addEventListener(‘dragDrop’, doDragDropDGSource);
    gridSource.addEventListener(‘dragComplete’, doDragCompleteDGSource);
    gridSource.addEventListener(‘dragOver’, doDragOverSource);
    gridSource.addEventListener(‘dragExit’, doDragExitSource);
    gridDestination.dragEnabled=true;
    gridDestination.multipleSelection=true;
    gridDestination.addEventListener(‘dragEnter’, doDragEnter);
    gridDestination.addEventListener(‘dragOver’, doDragOverDest);
    gridDestination.addEventListener(‘dragExit’, doDragExitDest);
    gridDestination.addEventListener(‘dragDrop’, doDragDropDGDest);
    gridDestination.addEventListener(‘dragComplete’, doDragCompleteDGDest);
    }
    function doDragEnter(event) {
    event.handled = true;
    }
    function doDragExitSource(event) {
    _root.overSourceItem = false;
    event.target.hideDropFeedback();
    }
    function doDragExitDest(event) {
    _root.overTargetItem = false;
    event.target.hideDropFeedback();
    }
    function doDragOverSource(event) {
    _root.gridSource = event.target;
    if (_root.gridDestination.dataProvider.length > 0)
    {
    _root.overSourceItem = true;
    event.target.showDropFeedback();
    if (Key.isDown(Key.CONTROL))
    event.action = mx.managers.DragManager.COPY;
    else if (Key.isDown(Key.SHIFT))
    event.action = mx.managers.DragManager.LINK;
    else
    event.action = mx.managers.DragManager.MOVE;
    }
    }
    function doDragOverDest(event) {
    _root.gridDestination = event.target;
    if (_root.gridSource.dataProvider.length > 0)
    {
    _root.overTargetItem = true;
    event.target.showDropFeedback();
    if (Key.isDown(Key.CONTROL))
    event.action = mx.managers.DragManager.COPY;
    else if (Key.isDown(Key.SHIFT))
    event.action = mx.managers.DragManager.LINK;
    else
    event.action = mx.managers.DragManager.MOVE;
    }
    }
    function doDragDropDGSource(event) {
    doDragExitDest(event);
    var dragItems = event.dragSource.dataForFormat(‘items’);
    var dest = event.target;
    var dropLoc = dest.getDropLocation();
    var destParentNode = dest.getDropParent();
    //var dropNode = dest.getNodeDisplayedAt(dropLoc);
    dest.addItemsAt(dropLoc,dragItems);
    }
    function doDragDropDGDest(event) {
    doDragExitSource(event);
    var dragItems = event.dragSource.dataForFormat(‘items’);
    var dest = event.target;
    var dropLoc = dest.getDropLocation();
    var destParentNode = dest.getDropParent();
    //var dropNode = dest.getNodeDisplayedAt(dropLoc);
    dest.addItemsAt(dropLoc,dragItems);
    }
    function doDragCompleteDGSource(event){
    var dest = event.target;
    var dropLoc = dest.getDropLocation();
    var destParentNode = dest.getDropParent();
    var selectedIn:Array = event.target.selectedIndices;
    //descending sort to remove items that have been dropped into target grid
    selectedIn.sort(16|2);
    if (_root.overTargetItem)
    {
    for(var i = 0; i < selectedIn.length; i++){
    //add the selected items
    _root.gridDestination.addItem(event.target.selectedItems);
    }
    for(var i = 0; i < selectedIn.length; i++){
    //remove this item
    event.target.dataProvider.removeItemAt(selectedIn)
    }
    }
    _root.overTargetItem = false;
    _root.gridDestination.hideDropFeedback();
    }
    function doDragCompleteDGDest(event){
    var dest = event.target;
    var dropLoc = dest.getDropLocation();
    var destParentNode = dest.getDropParent();
    var selectedIn:Array = event.target.selectedIndices;
    //descending sort to remove items that have been dropped into target grid
    selectedIn.sort(16|2);
    if (_root.overSourceItem)
    {
    for(var i = 0; i < selectedIn.length; i++){
    //add the selected items
    _root.gridSource.addItem(event.target.selectedItems);
    }
    for(var i = 0; i < selectedIn.length; i++){
    //remove this item
    event.target.dataProvider.removeItemAt(selectedIn)
    }
    }
    _root.overTargetItem = false;
    _root.gridSource.hideDropFeedback();
    } </cfformitem>
    <cfformitem type="text" height="15" style="font-weight:bold">Source Grid</cfformitem>
    <cfgrid name="gridSource" height="85" insert="yes" delete="yes" sort="yes" appendkey="yes" griddataalign="left" gridlines="yes" rowheaderalign="left" colheaderalign="left" selectmode="edit" enabled="yes" visible="yes" format="flash" autowidth="true">
    <cfgridcolumn name="lastName" header="Last" bold="no">
    <cfgridcolumn name="firstName" header="First" bold="no">
    <cfgridcolumn name="phone" header="Phone" bold="no">
    </cfgrid>
    <cfformitem type="text" height="15" style="font-weight:bold">Destination Grid</cfformitem>
    <cfgrid name="gridDestination" height="85" insert="yes" delete="yes" sort="yes" appendkey="yes" griddataalign="left" gridlines="yes" rowheaderalign="left" colheaderalign="left" selectmode="edit" enabled="yes" visible="yes" format="flash" autowidth="true">
    <cfgridcolumn name="lastName" header="Last" bold="no">
    <cfgridcolumn name="firstName" header="First" bold="no">
    <cfgridcolumn name="phone" header="Phone" bold="no">
    </cfgrid>
    <cfinput type="button" name="btnAddData" value="Refresh Data" onClick="addData();">
    <cfinput type="submit" name="submit" value="SUBMIT" width="200">
    </cfform>
    *************************************************************************************************************************

  8. Dan Avatar
    Dan

    I submitted both a security report to Adobe and a Feature Request/Bug form about the upcoming certificate expiration for CFForm b9c2d61c. I was never contacted by Adobe by email, phone etc for the submissions, and just found out about the patch by searching.
    Adobe / ColdFusion team, please follow up when these reports are filed, and setup an email notification program for patches and fixes.

Leave a Reply