ColdBox Platform Official Training Seminars Announces One FREE Seat for October 2008 Seminar in Dallas, Texas
Rancho Cucamonga, CA, August 19th, 2008
We are announcing today a special opportunity for one lucky person to attend our October 2008 ColdBox Platform 101 seminar in Dallas, Texas for FREE. For more information on ColdBox Platform Training or to enter for your chance at a FREE seat, please visit the ColdBox Training web site to download the official contest rules.
This is also a reminder that the Early Bird Pricing for the Training Seminar ends August 31, 2008 at Midnight. So hurry up and get your training on, space is limited.
The SideBar enables the developer to have a floating toolbar that will assist on development. You can reinit the framework, clear the cache, clear the log files, clear some of the most used scopes like session and client, and so much more.
It also appends itself to errors when they occur, so you can easily reinitialize or search for the errors in the live docs or the forums. Yes, you can search right from the sidebar.
Another extra feature is that the links declared are all customizable, so you can customize your own sidebar according to your project, create internal or external links, or anything you like.
Another extra feature is that the sidebar is completely skinnable via css, so you can make it look pretty!! So skin it and send over your screenshots.
We are pleased to announce ColdBox 2.6.1. This version is a critical fix release that ALL users should upgrade too, that will provide stability and tons of fixes. However, we have also included some goodies that we left out of 2.6.0 as they where not fully tested yet. Now they are. Below we have delineated the new goodies for 2.6.1. We have also created a What's New in 2.6.1 guide and you can read the entire release notes also.
This is another developer tool that will make your ColdBox development much easier thanks to Ernst van der Linden. We truly believe this developer tool will revolutionize the way you build your ColdBox Applications. TheThe full guide can be found here
This nifty little toolbar lives in your application (development of course) and helps you do the following:
* Reinit the framework
* Open cache and profiler monitors
* Dump vars
* Clear the Cache
* Clear Scopes
* Clear the log files
* Go in and out of debug mode
* Search the docs
* Search the forums
* Skinnable via css
* Add your own links via configuration (JSON)
* much more coming soon.
We have added two more core interception points to ColdBox
* afterCacheElementExpired : Executes after an element has expired from the cache
* onException : Executes when an exception occurs anywhere in the framework
There have been some cool minor enhancements to the cache.
* New FIFO Eviction policy (First In First Out)
* New method: setEvictionPolicy(policyObj), you can now override eviction policies with anything you want
* New method: getObjectMetadata(objectKey), you can now get the caching metadata structure about a specifc object key.
What this means is that an interceptor has the following methods that enable you to add content to an output buffer that will be flushed after the execution of the interception point. Why would I use this? Well, just look at the ColdBox SideBar. I can create output without affecting handlers, views, etc. Interceptors wrap themselves around an execution (AOP), so you can output content in an non-obtrusive and decoupled manner.
* clearBuffer():void
* appendToBuffer(string):void
* getBufferString():string
* getBufferObject():coldbox.system.util.RequestBuffer
The buffer is unique per interception point but available to the entire chain of execution within an interception point. Once the interception point is executed, the interceptor service will check to see if the output buffer has content, if it does it will advice to write the output to the output stream. This way, you can produce output very cleanly from your interception points, without adding any messy-encapsulation breaking output=true tags to your interceptors. (BAD PRACTICE). This is an elegant solution that can work for both core and custom interception points.
//clear all of it first
clearBuffer();
//Append to buffer
appendToBuffer('This software is copyright by Luis Majano');
The Autowire method in the bean factory now has a stopRecursion argument that can be used to send in a class name where recursion should stop.
We have created several utilities for Transfer Integration that we introduced a while back. They are now in the core in the extras directory.
You can read more about these two tools and how they will help you when working with Transfer:
stack = CreateObject("java","java.lang.Exception").init().getStackTrace();
//loop over our stacktrace
for(x=1;x lte ArrayLen(stack);x=x+1){
if( findnocase( getMetdata(this).path, stack[x] ) ){
foundLine = stack[x];
break;
}
}
//cleanup our line
runningFunction = replacenocase(listlast(foundline.getClassName(),"$","func",""));
There you go!! That parses out the inner class name (your method) out of the compiled cf class that coldfusion created for you. I can now do my lookup against it.
Would this be a bug on the Adobe cf java proxy? It seems to me, because the same tests on Railowork (even faster to say the least)!!
To reproduce this error, just try this below:
The string is #myBuffer.toString()#
The length is #myBuffer.length()#
The error that Adobe CF produces is that the method length() does not exist. The only workaround for this is by lengthing the string produced, but it will definitely be slower than a direct length call:
Length: #myBuffer.toString().length()#
I am happy to announce that our new ColdBox Marketplace has launched. We have tried to put together some great items for you and will be adding several more in the near future. Show your support for ColdBox by buying some of these great products. We have created several T-shirts, buttons, mousepads, jackets, hoodies with incredible design.
In the next few days we will be launching our accessories section where you will be able to buy customizable shoes, messenger bags, totes, ties, and even aprons. I already ordered my set!!
RewriteEngine on
#SQL Injection Protection --Read More www.cybercrime.gov
#Please use these rules if below words does not conflict with your friendly-urls. You may modify accordingly
RewriteRule ^.*EXEC\(@.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*CAST\(.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*DECLARE.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*DECLARE%20.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*NVARCHAR.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*sp_password.*$ /notfound.htm [L,F,NC]
RewriteRule ^.*%20xp_.*$ /notfound.htm [L,F,NC]
#Ignore images and this would be last rule --if the condition matched
RewriteRule ^/(.*\.(png|gif|jpg|bmp)) /$1 [L,PT,NC]
#Ignore CSS or JS files and this would be last rule --if the condition matched
RewriteRule ^/(.*\.(css|js)) /$1 [L,PT,NC]
#Ignore txt/doc/pdf/xls files and this would be last rule --if the condition matched
RewriteRule ^/(.*\.(txt|pdf|doc|xls)) /$1 [L,PT,NC]
RewriteRule ^$ index.cfm [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.cfm/%{REQUEST_URI} [QSA,L]