The ColdFusion team released three hot fixes recently:
- System Error and System Out log file rotation JRun generates Java stderr and stdout logs as [server name]-err and [server name]-out when running as a Windows service, however, the files do not rotate.
- Using named parameters with stored procedures using cfprocparam ColdFusion MX 7.0.2 can now use named parameters when calling stored procedures using the dbvarname attribute within the cfprocparam tag.
- Update for expired certificate on CFForm controls This hot fix addresses the expired certificate error with the cfform applets in ColdFusion MX 7.x.
Nice. I missed this and I especially need the log rotation one. Is there not an email service for CF Hot Fixes?
So they deprecated the dbvarname attribute and then un-depriacted it? Fun.
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
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
Hi.
Macromedia XML News Aggregator has ColdFusion Product Notification.
RSS is
http://www.macromedia.com/go/rss_coldfusion
Site is
http://weblogs.macromedia.com/mxna/index.cfm?query=byFeed&feedId=13&feedName=ColdFusion%20Product%20Notification
To be anal – this isn’t the exact same. For example, the top entry is an article, not a product notification.
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>
*************************************************************************************************************************
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.