Die Flexperten Herrlich & Ramuschkat

Coldfusion: wenn der Admin auf Reise ist

Immer dann wenn der Administrator mal auf Reisen ist, passieren die ungewöhnlichsten Dinge mit den Servern (frei nach Edward A. Murphy). Damit der Coldfusion-Administrator jetzt auch von unterwegs seine digitalen Schäfchen im Auge behalten kann haben Ray Camden und Todd Sharp freundlicherweise den “Mobile Optimized Coldfusion Administrator” bzw. den Coldfusion Administrator Mobile, kurz CFAM, gebaut und auf Riaforge bereitgestellt.

Weiterlesen »

Engage Your Customers

neuer Security Hotfix für Coldfusion

Adobe hat gestern einen wichtigen Security Hotfix für Coldfusion 8.x und Coldfusion 9.x (und frühere Versionen) veröffentlicht. Wie immer sollte der Hotfix zeitnah eingespielt werden…

Coldfusion: cfquery mit cfqueryparam und cachedWithin

Laut Livedocs für Coldfusion 8 sollte cfquery mit cfqueryparam und cachedWithin ja nicht funktionieren: “You cannot use the cfquery cachedAfter or cachedWithin attributes with cfqueryparam.” Stimmt gar nicht…!

Der (die, das,…?) Query

<cfquery name="findwerk" datasource="#application.dsn#" cachedwithin="#CreateTimeSpan( 0, 1, 0, 0 )#">
SELECT werk_id, werk, organisation, sichtbar
...

in CF8 führt nach dem zweiten Aufruf zu:

Ich vermute mal, mit dem 8.01 Update kam die Möglicheit Queries mit cfqueryparam auch zu cachen. Steht aber leider nicht in der Doku. Erst bei den CF9 Livedocs fehlt der Hinweis. Gut also, das wir die Doku immer erst hinerher lesen… ;-)

Coldfusion: cfqueryparam mit LIKE-Operator und Platzhaltern

Bin gerade bei einem Kunden über einen Query mit Like-Operator gestolpert, der mit einem cfqueryparam versehen werden soll:

SELECT ...
WHERE UPPER(CONVERT(varchar(500), a.keywords)) like '%#UCASE(x)#%'

Stellte sich zunächst die Frage, wohin mit den Paltzhaltern (%), in die value-Eigenschaft von cfqueryparam oder außerhalb vom Tag? Nach einem kurzen Test war klar, funktioniert unter CF8 nur, wenn der oder die Platzhalter innerhalb der value-Eigenschaft von cfqueryparam angegeben werden:

SELECT ...
WHERE UPPER(CONVERT(varchar(500), a.keywords)) like <cfqueryparam cfsqltype="cf_sql_varchar" value="%#UCASE(x)#%">

Open @ Adobe: neue Projektseite von Adobe auf Sourceforge

Sourceforge wird den meisten Entwicklern ja ein Begriff sein, noch eine der Hosting-Plattformen (kollaborative Entwicklung und Distribution) für OpenSource-Projekte. Seit gestern nun haben Adobe und Sourceforge in einer Kooperation eine Plattform zur Verfügung gestellt, auf der geneigte Entwickler Zugang zu allen OpenSource-Projekten von Adobe haben: Open @ Adobe

Adobe erhofft sich durch das Bereitstellen aller OpenSource-Aktivitäten an einer zentralen Stelle einen besseren Draht zu den Entwicklern und der Community. Zur Zeit sind über 20 Projekte (as3corelib, OSMF, flexlib, webkit,…) gelistet und Entwickler haben direkten Zugriff auf etliche Spezifikationen (Actionscript, AMF, RTMP, SWF, …). Reinschauen lohnt sich…

SVN Tipp: “gelockte” Resourcen überschreiben

Vielleicht hattet ihr schon manchmal das Vergnügen, das ihr euch mit Dateien in SVN rumzuschlagen musstet, die von SVN als “locked” angemeckert werden.

So eine Ressource lässt sich selbst mit “Replace with latest from Head” o.ä. nicht überschreiben, auch das Löschen der Datei aus dem Dateisystem und ein nachträgliches SVN Update hilft nicht, da der Lock immer noch wirkt (warum auch immer…)

Weiterlesen »

Coldfusion 9: Update auf 9.0.1 erschienen

Adobe hat gestern das erste Update für Coldfusion 9 veröffentlicht: Coldfusion 9 Update 1 (9.0.1)

Wichtigste Neuerungen sind u.a. die Amazon S3-Unterstützung, “for in” für Arrays in Schleifen, ExtJS jetzt in Version 3.1, Hibernate in Version 3.5.1 und und und. Was es alles Neues und Interessantes mit dem Update für Coldfusion 9 gibt kann in einem Artikel von Terry Ryan in der Adobe Developer Connection nachgelesen werden und eine kurze Übersicht gibt’s auch bei Raymon Camden im Blog.

Coldfusion + JavaScript: SerializeJSON(), eval() und führende Nullen

Es gibt aber auch manchmal Fehler, da muss man erstmal drauf kommen. Bei einem Kunden werden Hexadezimale Identifier fester Länge verwendet, was ich jedoch nicht wußte, auch mit führender Null (z.B. “0437EB6A4A4E2103″)! Nun wurden die IDs zusammen mit anderen Daten als Struct mittels SerializeJSON() codiert und an eine JavaScript-Funktion übergeben (cfajaxproxy läßt grüßen…). In der JavaScript-Funktion wurde dann mittels eval() das ganze wieder in ein JS-Objekt decodiert. Jetzt kommt der Clou mit der führenden Null: JavaScript interpretiert den Wert des Indentifiers dann als oktalen Wert, wegen der Null am Anfang! Bei der folgenden Verarbeitung hat’s dann immer mal wieder gekracht, nämlich dann, wenn ein Benutzer eben den Identifier mit führender Null hatte.

Der einfachste Weg für uns war, einfach vor dem Serialisieren einen Buchstaben, bzw. ein Sonderzeichen dem Identifier voranzustellen und dann nach dem Decodieren diesen wieder zu entfernen. So nimmt JavaScript immer an, das es sich um einen Textwert handelt.

Tour de Coldfusion

Der ein oder andere wird vielleicht schon mal mit der Tour de Flex oder der Tour de LiveCycle in Berührung gekommen sein. Das sind hilfreiche kleine AIR-Desktop-Anwendungen, die einen guten Überblick für Flex- bzw. LifeCylce-Neulinge, sowie einen detailierten Einblick in Flex bzw. LiveCycle für Entwickler geben. Das gibt es jetzt auch für Coldfusion: Tour de Coldfusion

Besonders praktisch finde ich, neben den hunderten von Code-Beispielen, die Kategorie “Language Updates” mit deren Hilfe wir hier schon mal abschätzen können, was sich bei einer Migration auf eine höhere Coldfusion Version ggf. ändert und somit Anpassungen im Code erforderlich macht. Die AIR-Anwendung hat zwar noch Beta-Status, ist aber schon gut zu gebrauchen.

Schaut’s euch einfach mal an unter http://tourdecf.adobe.com/

Coldfusion 9 Umfrage

Das Coldfusion Team von Adobe hat eine Umfrage zu Coldfusion 9 gestartet. Teilnehmer haben die Möglichkeit sowohl Feedback zur aktuellen Coldfusion 9 Version abzugeben, als auch Anregungen und Wünsche für zukünftige Versionen mitzuteilen. Die Fragen sind überschaubar und sollten in wenigen Minuten beantwortet sein.

Siehe http://www.surveymonkey.com/s/ColdFusionServer

Update: in diesem Zusammanhang gleich mal einige Ideen von Pete Freitag zur Verbesserung der Coldfusion-Sicherheit in der kommenden Version: 10 Ideas to Improve Security in ColdFusion 10

Ältere Beiträge »