Кінець OpenCFML
Кілька місяців тому ми згадували про створення дорадчого комітету з CFML, що мав би займатися розробкою та стандартизацією мови програмування. Плани були серйозні, команда підібралась відповідна.
Але не так сталося, як гадалося. Після тривалого затишшя з’явилися повідомлення про "смерть" проекту.
Спочатку Адам Леман повідомив про те, що Adobe виходить з комітету. Незабаром відреагував і Шон Корфілд, а також і Метью Вудвард, остаточно розв’язавши ситуацію.
В чому ж причини?
В першу чергу недостаток відкритості, що не спонукало учасників до активної діяльності.
Проблематичність пошуку консенсусу, наприклад в стандартизації CFScript в новій версії ACF, призвела до занепаду зацікавлення учасників, що й вилилося в поступове згасання діяльності.
Звісно, не обійшлося від деяких взаємних звинувачень в ігноруванні прийнятих рекомендацій та інших непорозуміннях.
Альтернативою цього року стало створення відкритої спільноти Conventional CFML Wisdom в групах Google, в якій спілкуються в тому числі деякі (колишні й поточні, якщо ще можна так сказати) учасники комітету.
Гадаю, що ця подія не справить великого впливу на спільноту, бо комітет так і не досяг жодних цілей, проваливши затвердження стандарту CFML2009. Але в цілому ситуація малоприємна, хоч і корисна з точки зору досвіду організації роботи зі стандартизації мови CFML, що все одно доведеться колись робити.
Доклад на FPUG #20 - Coldfusion+Flex
Наша юзер-группа в лице меня выступила на 20й встрече украинской группы пользователей Flash Platform в Киеве 10 июля 2010 года. Были и полезные доклады и живое общение и даже небольшой конец света (спонсор - погода в г.Киеве). От встречи осталась масса положительных эмоций, спасибо всем кто был к этому причастен.
Тема доклада - знакомство с Coldfusion и основы работы с Coldfusion-сервером из Flex-приложения. Слайды, описание и код демки - внутри.
Читати далі...
Випущено Tour de ColdFusion Beta
Tour de ColdFusion це програма для стільниці, побудована на Adobe AIR, що включає в себе сотні зразків коду та прикладів. Кожен приклад поєднує в собі результат виконання (на віддаленому сервері) та вихідний код.
Поки що база прикладів має пробіли, тому й позиціонується як бета, але автори обіцяють швидке наповнення, при чому зміни будуть автоматично прийняті при перезапуску програми.
Треба зауважити, що програма є аналогом вже існуючих проектів Tour de Flex та Tour de LiveCycle.
Виглядає це приблизно так:
Встановити програму можна прямо з сайту Tour de ColdFusion.
Подякувати чи допомогти розробникам можна в блозі Ґреґорі Вілсона, або написавши листа.
Помилка в Transfer 1.1 при роботі з ACF9 та Railo 3.1.2.0xx
Після оновлення Railo (до bleeding edge) перестали працювати get-методи для неіснуючих первинних ключів. Раніше в такому випадку просто вертався новий bean, що було зручно використовувати для створення нових об’єктів, наприклад таким чином:
<cfset beanContact = variables.transfer.get("cnt.Contact", 0) />
<cfdump var="#beanContact.getMemento()#" label="beanContact" />
Натомість почало вилітати виключення виду:
transfer.EmptyQueryException -- It is likely the ID that has been selected for this query no longer exists
Виявилося, що така сама проблема виникла спочатку з CF9, а Railo пізніше "наздогнали".
На щастя, розробник Transfer оперативно її виправив. Тож ті, кому горить, можуть вже зараз витягти останню версію з SVN, решта можуть дочекатися випуску 1.1.1, що нібито вже не за горами.
Треба зауважити, що завдяки заздалегідь спланованому використанню маппінґів, переключення до іншої версії та позбавлення від проблеми були легкими як ніколи.
Новини CF-OpenSource v17
Цей випуск повністю присвячено новинкам з RIAForge.
Додаток для взаємодії з API популярної блоґо-платформи Tumblr.
Втілення великої кількості можливостей служби Google Geocode.
Додаток для взаємодії з API Recurly.com, системи для організації регулярних платежів.
Lorem Ipsum Dummy Text Generator v1.0
Назва говорить сама за себе. Додаток для CF Builder.
Бібліотека для локалізації додатків, створена за подобою аналогічного пакету для Flex.
Обгортка для Java-бібліотеки OpenID4Java.
Втілення взаємодії з означеною службою.
Цікавий проект, побудований на FW/1, що втілює фабрику для об’єктів різних типів.
Додаток для CF Builder для швидкого написання керівних конструкцій FB5NoXML.
Бібліотека для базової взаємодії з сервісами на базі протоколу OAuth 1.0
Додаток для CF Builder, що може стати у нагоді при роботі з CF9 ORM.
Додаток на базі MG, презентований автором на конференції NCDevCon 2010.
CFC Hint Checker Extension 0.9
Додаток для CF Builder, що шукає визначення методів із загубленими hint-ами.
Making OO/MVC ColdFusion Simple 2.0
Ще один CFML-приклад, презентований автором на конференції (CFObjective 2010).
Втілення стандарту WS-Security без використання Java-бібліотек.
Бібліотека для взаємодії з поштовими службами.
Нова версія популярної відкритої CMS.
Додаток, що допомагає швидко спакувати (та надіслати поштою) код прямо з CF Builder.
Новини Adobe ColdFusion - 06.2010
На останній конференції SOTR з’явилася інформація про деякі плановані оновлення в ACF 9.0.1. Серед найбільш цікавих: множинні ORM джерела даних, HQL з cfquery та підтримка Amazon S3. Не кажучи вже про більш як півтисячі виправлень.
Було випущено офіційний посібник з безпеки ColdFusion Lockdown Guide (PDF).
Вийшли друком перша та друга частини головної книги CFML-програміста: Adobe ColdFusion 9 Web Application Construction Kit. Вже можна знайти на Амазоні.
Випущено оновлення безпеки для ACF 8.0, 8.0.1 та 9.0 та всіх ОС, що виправляє ряд серйозних вразливостей. Більше деталей в офіційному бюлетені APSB10-11.
На завершення можна згадати про гарний холівар, ініційований Террі Райяном, в якому з ентузіазмом взяли участь чимало провідних учасників спільноти. Насолоджуйтесь :)
Новини Railo - 06.2010
Цей спец-випуск присвячено новинам зі стану Railo з моменту останньої публікації на цю тему.
Перш за все, процес розробки не зупиняється ні на день, bleeding-edge випуски з’являються ледь не щотижня, на момент написання цього тексту поточною є версія 3.1.2.014. Більшість виправлень та оновлень можна детально відслідкувати в офіційному баґтрекері, а також на форумах Uservoice. Наприклад, я очікую на виправлення невеличкої проблеми з cfdump.
Починаючи з версії 3.1.2.009 дистрибутив включає в себе ядро проекту Railo Ajax, в тому числі підтримку базових міток (cfajaxproxy, cfajaximport, cfdiv) та JavaScript-бібліотеку (jQuery). Ця частина має назву CORE, інша (UI) включає решту розширень (cfwindow, cfmap, cflayout) та має підключатися за допомогою розділу Extension адміністративної панелі, докладніше описано в цій публікації.
Андреа Камполоньї розробив ще два схожих між собою розширення: cfjavascript та cfstylesheet. Призначено їх для стиснення та об’єднання статичних файлів для пришвидшення їх завантаження. Тодд Реферті написав дуже докладну замітку з використання цих розширень.
Дуже приємною новиною стало включення до ядра раніше платного розширення для роботи з Amazon S3. Коли конкретно це станеться не дуже зрозуміло, але на пам’ять залишимо тут посилання на стареньку замітку про те, як ним користуватися. Що цікаво, це рішення скоріш за все було прийняте під впливом повідомлень зі стану Adobe, але про них ми поговоримо окремо.
Особливо цікавим для мене стало представлення Roadmap проекту, що включає опис планованих можливостей версій 3.2 та 4, а також деяких додаткових можливостей. На жаль, поки невідома конкретна дата виходу 3.2, на яку особисто я чекаю з нетерпінням з огляду на наближення моменту виходу на публіку робочого проекту, що працює поки на останньому стабільному випускові.
Новини CF-OpenSource v16
Цей спец-випуск присвячено виходу нових версій двох прогресивних фреймворків.
Команда розробників CFWheels невпинно наближається до великого релізу, тим часом випустивши оновлення за номером 1.0.5.
Воно включає в себе більш як 2 десятки виправлень. Повний їх список можна переглянути в публікації Released: ColdFusion on Wheels 1.0.5
Натомість Шон Корфілд (Sean Corfield) його вже досяг, повідомивши про вихід версії 1.1.
Серед оновлень:
- Рекомендований скелет додатку.
- Більш гнучка конфігурація підсистем та контролерів.
- Нові можливості API.
Повний список можна переглянути в публікації FW/1 Release 1.1 Available!
Adobe Enterprise Cafe
Корпорация Adobe и сообщество регулярно доставляет выдает килотонны информации, которую бывает сложно собрать и осмыслить. В помощь утопающим в потоке, Adobe выпустила тулзень Adobe Enterprise Cafe - AIR-программу для отображения новостей, сбора фидов с блогов, видео Adobe TV и т.д. До этого я припоминаю только Adobe Coldfusion Box, но эта тулза довольно узко-специализирован на Coldfusion в Европе.

Flex+Railo+BlazeDS+MySQL+Tomcat+Apache+Linux
При всем уважении к Матушке-Coldfusion, нельзя забывать что она стоит денег. Деньги большие, но на каждый доллар инвестиций покупатель получает очень много. К сожалению, не все могут оплатить стоимость лицензии, однако это не повод считать их людьми второго сорта. Все перечисленные в заголовке технологии - бесплатны, два первых - продукты Adobe. Если знаешь Java, можно обойтись без Railo, но скорость разработки будет существенно меньше. Все одно, получается, что задаром, можно легко создавать классные RIA !
Coldfusion 9 и проблема с Apache Virtualhost
После "чистой" установки Coldfusion 9 возникла странная проблема. Виртуальные хосты Apache 2.2 не работали, и документы *.cfm отдавались только по прямой ссылке в текстовом виде. То есть казалось, что проблемы две - неработающая Coldfusion и неработающие хосты. Однако, оказалось что инсталлятор не добавил handler, и обе проблемы решились одновременно, исправлением httpd.conf - в строчке AddHandler надо добавить .cfm и .cfc
# JRun Settings
LoadModule jrun_module "C:/ColdFusion9/runtime/lib/wsconfig/2/mod_jrun22.so"
<IfModule mod_jrun22.c>
JRunConfig Verbose false
JRunConfig Apialloc false
JRunConfig Ignoresuffixmap false
JRunConfig Serverstore "C:/ColdFusion9/runtime/lib/wsconfig/2/jrunserver.store"
JRunConfig Bootstrap 127.0.0.1:51800
AddHandler jrun-handler .jsp .jws .cfm .cfc
</IfModule>
Не забыть про DirectoryIndex:
<IfModule dir_module>
DirectoryIndex index.cfm index.html index.htm
</IfModule>
Виртуал хосты соответственно:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "C:/inetpub/wwwroot/domain1"
ServerName domain1
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:/inetpub/wwwroot/domain2"
ServerName domain2
</VirtualHost>
FW/1 теперь на GitHub
Новому фреймворку - современное хранилище ! Будет также уместна эта ссылочка - как начать работать с Git и GitHub под Windows.
Мир! Труд! Май!
Диалекты CFML в Coldfusion Builder
Несмотря на название, Coldfusion Builder позволяет расширить Code Assisst диалектами Railo и BlueDragon. Мэтт Гиффорд (Matt Gifford) описал методику создания новых словарей. Методика применима и к CFEclipse.
Обновлены Adobe Groups
Запущена новая версия Adobe Groups. Сила особенно качественно пребыла с Coldfusion-Джедаем, код Adobe Groups был полностью переписан на Coldfusion 9 с использованием Model-Glue и ORM.
Кончился срок старых CF Builder Beta
Сегодня истек срок действия старых бета-версий CF Builder - хороший повод пойти скачать релиз ! Триал действует 60 дней.
Fail при скачивании файла с помощью CFContent
С помощью Coldfusion очень легко организовать файловое хранилище с функцией поиска. Coldfusion без труда может проиндексировать PDF и другие документы с помощью Verity или Solr, может поработать с картинками с помощью CFImage и покопаться в метаданных, может даже вытащить теги из MP3 записей. Однако, проблема может ждать там где не ожидаешь - Coldfusion пасует при скачивании больших файлов (больше 1ГБ).
Организовать процесс скачивания файла, да еще спрятать настоящее размещение (название) файла можно двумя строчками:
<cfheader name="Content-Disposition" value="attachment; filename="someothername.avi" />
<cfcontent file="c:/somefile.avi" />
Однако, этот простейший код оказывается весьма прожорливым, когда речь идет о скачивании больших файлов. При скачивании 100МБ файлов никаких трудностей не возникло. При этом, вместо ожиданного видео-файла размером 1ГБ, я смотрел на "Ошибку 500, сервис недоступен". Coldfusion занимал в памяти около 450МБ в состоянии покоя. График потребление памяти таков:

Попробовал перегрузить сервис, в надежде что он освободит немного памяти, но безрезультатно:

Потом немного прибавил памяти виртуальной Java-машине, с 512МБ по-умолчанию до 768МБ. Не помогло.

Тестировалось на первом официальном релизе Coldfusion 9.0.0.251028, под Windows Vista, на компьютере с 2-ядерным процессором и 2ГБ оперативки. Тестировалось на J2EE инсталляции Coldfusion + Glassfish, а также на чистом обычном Coldfusion (JRun). В качестве веб-сервера выступали и IIS и Apache.
Решения проблемы скачивания 1ГБ файлов у меня пока нет. Могу сказать одно - Railo 3.1 установленный на Tomcat 6 справился с задачей на отлично - при этом потребление памяти выросло с 37 до 42 МБ...
Вышли в свет CFBuilder, Flex Builder 4 и Flex 4 SDK
В этот теплый мартовский день Adobe преподносит тройную порцию удовольствия - первая версия Coldfusion Builder и четвертая версия Flash Builder официально доступны для широкой публики. Плюс к этому Adobe Flex SDK 4.0.0.14159 становится официальным релизом.
Офіційно розпочато продажі ColdFusion Builder
Відсьогодні офіційно можна придбати CFBuilder. Незважаючи на ряд побоювань щодо ціни, вона складає цілком прийнятні $299, а для ще більшого заохочення дистрибутив включає ще й Flash Builder 4 Standard.
Варто зауважити, що також доступна trial-версія, котру можна завантажити звідси та спробувати протягом 60-ти днів.
Як і для бета-версій, наявні версії тільки для Mac та Windows, що для мене означає те, що я ще на невизначений строк залишатимусь з CFEclipse :)
Огляд швидкодії ColdFusion 9 від Adobe
Adobe опублікувала звіт про ColdFusion 9, в якому розкрила переваги в швидкодії перед версіями 7 (визначено загальний приріст у 500%) та 8 (40%).
Найбільш помітні покращення відносно CF8 включають:
- Ініціалізація та виклик методів CFC, відповідно 700% та 200%.
- Flash Remoting - покращення на 800%.
- Гігантський приріст у роботі CreateUUID, що складає 10000%.
- На 100% покращено швидкодію конектора для IIS.
- На 35% покращено швидкодію функцій для роботи з датами.
Про все це докладніше, та ще й з гарними графіками можна дізнатися з документу ColdFusion 9 Performance Brief (pdf).
Новини CF-OpenSource v15
Оновлення продуктів та додатків
SeleniumMX - A Selenium + MxUnit Framework
Вельми перспективний проект, що об'єднує в собі два фреймворки для тестування.
Допоміжний випуск фреймворку, що слідує за нещодавним 1.8.
cfUniForm v.4.0 - Leaner, Meaner, More Features - Just Plain Ol' Better
Нова версія фреймворку для побудови форм.
Новий convention-based фреймворк для CF9, що використовує можливості Hibernate.
Компонента для обчислення розмірів flash-роліку.
Компонента для взаємодії з API сервісу для розміщення малюнків.
ValidateThis CFWheels Plugin 0.5
Додаток до CFWheels, що дозволяє використовувати на сайті ValidateThis, фреймворк для валідації форм.
Rhea: Rackspace Cloud API 0.99
Втілення взаємодії з API хостингу Rackspace Cloud.
Модуль, що дозволяє програмно керувати включенням JavaScript та CSS до сторінок сайту, в тому числі з мінімізацією.
bit.ly URL Service API CFC 1.0
Втілення взаємодії з API Bit.ly, сервісу скорочення посилань.
Втілення взаємодії з API Eventbrite, сервісу для організації подій.
ColdFusion File Manager 1.0 alpha 3
Файловий менеджер з GUI на Ajax.
Оголошення про випуск оновлення популярного блогу.
Різні оновлення та повідомлення
Code coverage & cyclomatic complexity calculations coming to ColdFusion
Обговорення системи для тестування Chimera.
Framework One Sample Application - QBall
Приклад розробки на FW/1 від Рея Кемдена.
Do you want to see this in LightWire?
Пітер Белл запитує про доцільність додавання деяких нових можливостей до LightWire.
Ще один опис першого досвіду роботи з FW/1.
Опис досвіду розгортання Mango з Oracle в якості СУБД.
Content Management and the Splash CMS — Introduction
Огляд Splash CMS, побудованої на базі CFWheels.
Новий сайт з CFML документації: CFMLDocs
Дейл Фрейзер розповів про те, чому він вирішив створити альтернативу стандартній документації, а також про заплановані можливості проекту.
Про все це в його публікації New ColdFusion Documentation Site Launched
Серед вже реалізованих варто відмітити простий, але зручний AIR-клієнт.
Сам проект: http://cfmldocs.com
Новини CF-OpenSource v14
Оновлення продуктів та додатків
Model Glue 3.1 Release Candidate
New Official Release - Model-Glue 3.1
Вийшов новий випуск популярного фреймворку. Він містить чималу кількість виправлень та покращень, повний список яких можна переглянути за першим посиланням.
Марк Мендел робить короткий огляд планів щодо першого повноцінного релізу його системи для автоматизації документування.
Додаток, що замінює редактор на Markdown в Mango Blog.
Втілення підсвітки синтаксису з prettify.js для Mango.
Позиціонується як проект для управління процесом розробки з використанням Agile/Scrum методик. На момент написання публікації чомусь було відсутнє посилання до завантаження.
Назва говорить сама за себе.
Компонента для втілення можливостей API Intuit QuickBooks. Яких саме, пропонується дізнатися з документації.
Компонента для організації взаємодії з IMAP-шлюзом.
Компонента для організації взаємодії з SNMP-шлюзом.
Колись комерційний продукт для роботи з малюнками зроблено вільним, очевидно завдяки розповсюдженю CF8+, де ці можливості втілені на рівні мови.
Ситуація аналогічна попередньому записові.
cfCalais – A Coldfusion tag to easily create semantic data
Мітка для додавання семантичної розмітки для даних на сторінках сайту.
Mach-II Simplicity (1.8) Released
Випущено нову версію популярного фремворку.
Різні оновлення та повідомлення
Trying out the CFWheels framework
Звіт про експерименти початківця з CFWheels.
Front Controllers Should NOT Extend Application.cfc
Барні Бувер пропонує подискутувати щодо потреби наслідування Application.cfc на прикладі FW/1
Замітка розповідає про те, як можна вбудувати JavaLoader до проекту на Mach-II.
ColdFusion Query of Query tips and tricks
Ендрю Мерсер ділиться деякими знахідками та підказками з використання QoQ.
Cache Template in Request Setting Explained
Піт Фрейтаґ пояснює особливості цієї нової можливості CF9.
Змагання Railo 4k дає шанс виграти квиток на cf.Objective() 2010
Команда Railo пропонує змагання, в якому треба втілити одну з особливих можливостей двигуна в рамках 4кб коду (як було уточнено в групах, розмір скомпільованого класу).
Надіслати роботи треба на електронну скриньку до першого квітня.
Всі роботи буде розглянуто та опубліковано, а переможець отримає запрошення (квиток) на цьогорічну cf.Objective().
Дізнатися електронну адресу та отримати кільканадцять цінних посилань на опис можливостей до втілення знайти можна в публікації Take the Railo 4k Challenge and win a ticket to cf.Objective()!
Корисні посилання від Чарлі Арехарта
Чарлі продовжує свою місію систематизації ресурсів CF-світу.
Цього разу він уклав два вагомі списки посилань за наступними темами:
- Ultimate list of CF debugging output template alternatives
- The Ultimate Var Scope Resource list? Understanding/resolving problems with the var scope in CFML
В першій публікації розповідається про те, які є способи заміни стандартних шаблонів для налагодження ColdFusion. Треба зауважити, що тут не розкрито тему для Railo, котрий має ще більш гнучку систему шаблонів та надає більше варіантів у стандартній комплектації.
Друга розкриває суть та різні аспекти проблеми з VAR-scope, зокрема й про особливості його в CF9. Must read для кожного CFML-програміста.
Установка Coldfusion и Railo на одном J2EE сервере на примере Glassfish
По следам наших наших прошлых публикаций, продолжаем серию рассказом про нестандартную установку Coldfusion в целях удобной разработки. Мотивация в том, чтобы иметь возможность разрабатывать код под Coldfusion и Railo на одной машине, но при этом не использовать слишком много ресурсов компьютера.
Читати далі...

