backgroundimage

blogFly - a lightweight ColdFusion blog-engine

Ant FTP Verbindungsfehler in ColdFusion Builder

0

Sieht mal folgenden Fehler im ColdFusion Builder bei einem FTP-Deployment mithilfe von Ant, so fehlt eine externe JAR Bibliothek:

Could not create type ftp due to java.lang.NoClassDefFoundError: org/apache/commons/net/ftp/FTPClientConfig

Um den Fehler zu beheben von Apache die Commons-Net Bibliothek (commons-net-3.1-bin.zip) herunterladen und die enthaltene commons-net-3.1.jar im Ant Plugin Verzeichnis speichern:

/Applications/Adobe ColdFusion Builder 2/plugins/org.apache.ant_1.7.1v20.../lib/commons-net-3.1.jar

Danach im ColdFusion Builder unter Settings/Ant/Runtime bei den Ant Home Entries dieses Externe Jar File hinzufügen.

ColdFusion Builder Einstellungen

Downloadlink

Industrieminuten in ein Datumsobjekt und zurück

0

"In Zeiterfassungssystemen der Industrie werden geleistete Arbeitsstunden häufig dezimal dargestellt, also statt 8 Stunden und 45 Minuten 8.75 h" - so beginnt der entsprechende Wikipedia  Artikel zum Thema Industrieminute.

Gerade auch in Ticketing Systemen kommt diese Zeiteinheit ebenfalls zum Einsatz, da sie wesentlich schneller eingegeben ist und die Schwierigkeit der Eingabe und Validierung einer Zeitdauer von mehreren Tagen wegfällt. Ich habe bis anhin auf jedenfall noch keinen brauchbaren Timepicker gesehen, auf welchem 2 Tage, 4 Stunden und 30 Minuten in einer komfortablen Art und Weise hätte eingegeben werden können. Bei den Industrieminuten sind wir da bei flotten 20.5 Stunden.

Wie das jetzt aber in ColdFusion zu einem Datumsobjekt parsen? Ganz einfach:

<cfset variables.duration = dateAdd('n',arguments.duration * 60,createTimeSpan(0,0,0,0)) />

Ganz wie wie gewohnt von ColdFusion, ist der umgekehrte Weg mindestens genauso einfach:

<cfset local.duration = ceiling(dateDiff('n',createTimeSpan(0,0,0,0),local.duration) / 60 * 100) / 100 />

Webseite

Kategorien: ColdFusion

ColdFusion 9.0.1: SSL auf Builtin Webserver einrichten

0

1. Im Terminal wechseln zum ColdFusion 9 runtime/lib Verzeichnis:

cd /Applications/ColdFusion9/runtime/lib

2. Im SSL Zertifikats - Keystore ein Zertifikat für "localhost" generieren

keytool -genkey -dname "cn=localhost, ou=CF, o=Adobe" -keyalg rsa -keystore keystore

3. SSL im /Applications/ColdFusion9/runtime/servers/coldfusion/SERVER-INF/jrun.xml aktivieren (folgende Zeilen auskommentieren und wo nötig ergänzen)


  true
  *
  9100
  {jrun.rootdir}/lib/keystore
  changeit
  {jrun.rootdir}/lib/trustStore
  jrun.servlet.http.JRunSSLServerSocketFactory

4. Im ColdFusion Administrator in den Server Settings folgendes in den java.args für die jvm.config ergänzen:

-Dcoldfusion.disablejsafe=true

5. ColdFusion neu starten und SSL auf Port 9100 geniessen:

https://localhost:9100/CFIDE/Administrator/index.cfm

Webseite

Kategorien: ColdFusion

ColdFusion ORM: Log Hibernate Queries

0

Die Datei /Applications/ColdFusion9/lib/log4j.properties anpassen und folgende Zeilen auskommentieren:

### log just the SQL
log4j.logger.org.hibernate.SQL=DEBUG, HIBERNATECONSOLE
log4j.additivity.org.hibernate.SQL=false
### Also log the parameter binding to the prepared statements.
log4j.logger.org.hibernate.type=DEBUG

Und am Ende den HIBERNATECONSOLE Appender anpassen:

# HibernateConsole is set to be a ColsoleAppender for Hibernate message  using a PatternLayout.
#log4j.appender.HIBERNATECONSOLE=org.apache.log4j.ConsoleAppender
#log4j.appender.HIBERNATECONSOLE.layout=org.apache.log4j.PatternLayout
#log4j.appender.HIBERNATECONSOLE.layout.ConversionPattern=%d{MM/dd HH:mm:ss} [%t] HIBERNATE %-5p - %m%n%n
log4j.appender.HIBERNATECONSOLE=org.apache.log4j.RollingFileAppender
log4j.appender.HIBERNATECONSOLE.File=../../logs/hibernatesql.log
log4j.appender.HIBERNATECONSOLE.Append=true
log4j.appender.HIBERNATECONSOLE.MaxFileSize=500KB
log4j.appender.HIBERNATECONSOLE.MaxBackupIndex=3
log4j.appender.HIBERNATECONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.HIBERNATECONSOLE.layout.ConversionPattern=%d{MM/dd HH:mm:ss} [%t] HIBERNATE %-5p - %m%n%n

Jetzt nur noch ColdFusion neustarten und die Hibernate Queries werden unter /Applications/ColdFusion9/logs/hibernatesql.log geloggt.

Kategorien: ColdFusion

ColdFusion ORM: Composite Key und versionNr vertragen sich nicht

0

Heute musste ich leider feststellen, dass die Benutzung eines Composite Keys sowie dem VersionsNr Properties im ORM von ColdFusion 9.0.1 zu sehr schwer nachvollziehbaren Fehlern führt :( Hinter den Kulissen scheint Hibernate jeweils zu prüfen ob ein Entity mit der gewählten VersionsNr verfügbar ist UND ob der Composite Key bereits verwendet wurde. Im normalen Fall trifft leider beides zu und es wird für beide Bedingungen dann jeweils ein Entity erstellt :(

Folgende Kombination sollte also vermieden werden:

<cfproperty name="versionnr" fieldType="version" />
<cfproperty name="ident" fieldType="id" />
<cfproperty name="guid" fieldType="id" />

Caveman

0

Caveman

Absolut geniale One-Man-Show. Vor allem in Begleitung mit seinem Partner!! Immer wieder schön zu sehen wie verschieden Mann/Frau sind und das es allen anderen diesbezüglich nicht anders ergeht als einem selbst :)

Sehr unterhaltsamer und lustiger Versuch der Erklärung woher diese Unterschiede stammen, ein absolutes Muss für Paare!!

 

Webseite

Google Analytics Event Tracking

0

Auch das Event Tracking in Google Analytics funktioniert super einfach. Will man also zusätzlich zum Page View die getätigten Aktionen auf einer Seite messen, so fügt man an gewünschter Stelle einfach folgendes Snippet ein:

onclick="_gaq.push(['_trackEvent','Category','Action','Label']);"

Webseite

Kategorien: Webdevelopment

Google Analytics Page Tracking

0

Das Page Tracking an sich funktioniert super einfach mit Google Analytics. Einfach folgenden Tracking Code auf die Webseite einbinden:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'GoogleAnalyticsKey']);
_gaq.push(['_trackPageview']);

(function() {
  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

Fertig ist das Page Tracking.

Webseite

Kategorien: Webdevelopment

Joint Venture von Apple und Ersatzgeräte: Das geht doch besser?!

1

Das Joint Venture Programm von Apple an und für sich ist ja ganz nett, aber man merkt deutlich das dieser sogenannte "Business Support" noch in den Kinderschuhen steckt:

  • Wenn gefordert sind immer zuwenig ausgebildete Fachkräfte vor Ort
  • Die Wartezeiten sind trotz Versprechungen einer bevorzugten Behandlung seitens Apple viel zu lang
  • Ersatzgeräte sind zwar prinzipiell vorhanden, werden aber mit veralteten Betriebssystem Versionen ausgeliefert

Ich hab für mein Macbook Air ein Ersatzgerät bekommen, dieses aber noch mit Snow Leopard - Resultat: Ich konnte zwar mein Time Machine Backup wiederherstellen, aber die Programme funktionieren nicht da diese für Lion konzipiert wurden.

Extrem ärgerlich dabei: Der Mac App Store wurde ebenfalls wiederhergestellt und lässt sich nicht starten, ein Upgrade auf Lion ist unter diesen Bedingungen unmöglich!! Vielen Dank Apple - ich muss nun Stunden damit verbraten das Ersatzgerät komplett neu zu installieren, nur weil ihr ein einfaches Update nicht ausführen konntet!

Ganz ehrlich, ein funktionierender Business Support der was taugt schaut anders aus!!

FW/1 2.0 Stable!

2

Bereits seit einiger Zeit als Release Candidate verfügbar, hat FW/1 nun den goldenen Sprung geschafft und ist in der finalen Version 2.0 zum Download verfügbar! Vielen dank Sean Corfield!

Bleibt jetzt nur noch abzuwarten wie lange es dauern wird bis DI/1 erwachsen wird!? Ich hoffe, dass dies auch bald geschehen wird!

Downloadlink Webseite

Kategorien: ColdFusion

Kundendienst: Swisscom vs. Sunrise

1

Kundendienst à la Swisscom

Gerade eben hatte ich ein Telefonat mit dem Swisscom Kundendienst. Ich bin zurzeit stolzer Besitzer eines Nadel & DSL Pro Kombiangebots. Aufgrund meines Umzugs von St. Gallen nach Zürich, musste ich aber meinen DSL Vertrag kündigen.

Vertraglich bin ich leider bis Ende Februar an das DSL gebunden, die Nachmieterin zieht allerdings bereits Ende Januar in meine alte Wohnung ein und mich muss zusätzlich bis dahin doppelt Miete zahlen.

Nach Erklärung der Situation und einer kurzen Rücksprache der Kundendienstmitarbeiterin war die Situation nach nicht einmal 10 Minuten zu meiner vollsten Zufriedenstellung geklärt:

Abschaltung des DSL am Ende des Januars und Verzicht auf die 59.- Ende Februar! Das nenne ich einen super Kundenservice!!

"Kundendienst" à la Sunrise

Letztes Jahr bin ich (zum Glück) zu Swisscom gewechselt. Aus Kulanz und weil ich damals ebenfalls noch zwei Monate an den Vertrag gebunden war, hatte ich in den zwei Folgemonaten die Kosten ebenfalls doppelt bezahlen müssen (Sunrise und Swisscom). Ist zwar ärgerlich, aber ok. Im dritten Monat habe ich aber von Sunrise noch zusätzlich eine Rechnung erhalten, mit einem erneuten Monatsbetrag - dies obwohl ich die Nr bereits seit drei Monaten nicht mehr verwendet hatte!

Mehrere Telefonate, Blogeinträge und Mails später ist die Situation noch immer nicht geklärt und die Sunrise beauftragt doch tatsächlich wegen 20.- noch ein Inkasso Unternehmen! Geht's noch?!