/* Code Search */
Dienstag, den 17. Oktober 2006Hmmm… der Code von M$ DO$ 6.0. Assembler. Waren das noch Zeiten…
Hmmm… der Code von M$ DO$ 6.0. Assembler. Waren das noch Zeiten…
jack_wrap.cpp: In member function `bool jack_client::send(int)':
jack_wrap.cpp:141: error: could not convert `std::for_each [with _InputIterator = std::_List_iterator> >, _Function = std::binder2nd>, int, void> >](((jack_client*)this)->jack_client::tracks->std::list<_Tp, _Alloc>::begin [with _Tp = std::pair >, _Alloc = std::allocator> >](), ((jack_client*)this)->jack_client::tracks->std::list<_Tp, _Alloc>::end [with _Tp = std::pair >, _Alloc = std::allocator> >](), std::bind2nd [with _Operation = std::pointer_to_binary_function>, int, void>, _Tp = int](((const std::pointer_to_binary_function>, int, void>&)((const std::pointer_to_binary_function>, int, void>*)(&std::ptr_fun [with _Arg1 = std::pair >, _Arg2 = int, _Result = void](s)))), ((const int&)((const int*)(&signal)))))' to `bool'
make: *** [jack_wrap.o] Error 1
Wie kriegt man mit XML Spaces in Attribute von XML Elementen? So:
<xsl:variable name="foo">bar</xsl:variable> <xsl:text disable-output-escaping="yes"><![CDATA[ <select onclick="aaaa bbbb ]]></xsl:text> <xsl:value-of select="$foo"/> <xsl:text disable-output-escaping="yes"><![CDATA[ ]]></xsl:text> <xsl:value-of select="$foo"/><xsl:text disable-output-escaping="yes"><![CDATA["/>]]></xsl:text>
Warnung: das ist nicht wirklich Standardkonform.
Vor einiger Zeit bin ich über ein mühsames Detail im ansonsten grossartigen PostgreSQL gestolpert. Wir hatten eine Tabelle mit einem numeric Feld. Bei Vergleichen mit Konstanten reklamierte Postgre es könne keinen Operator für die Typen numeric und double precision finden.
Da wir bei den restlichen unterstützten Datenbanken eh double precision verwenden war das gerade ein guter Grund den Typ dieses Feldes zu ändern. Jetzt stellte sich aber herause, dass Postgre nur Konstanten mit weniger als 15 Nachkommastellen als double precision betrachtet. Alles was mehr Stellen hat ist numeric:
daniel=# d tr_table_okpx Table "tr_table_okpx" Column | Type | Modifiers -------------+--------------------------+----------- id | character(20) | not null obj_version | bigint | pvalid | boolean | pexpires | timestamp with time zone | pamount | bigint | pobject | character(20) | ppassword | character varying(255) | prating | double precision | Primary key: tr_table_okpx_pkey
daniel=# SELECT * FROM tr_table_okpx WHERE prating >= 3.5999999999999999996; ERROR: Unable to identify an operator '>=' for types 'double precision' and 'numeric' You will have to retype this query using an explicit cast daniel=# SELECT * FROM tr_table_okpx WHERE prating >= 3.5999999999996; id | obj_version | pvalid | pexpires | pamount | pobject | ppassword | prating ----+-------------+--------+----------+---------+---------+-----------+--------- (0 rows)
Und da auch ein Upgrade auf die aktuellste PostgreSQL Version nichts gebracht hat müssen wir jetzt halt wohl oder übel diesen Cast benutzen:
SELECT * FROM tr_table_okpx WHERE prating >= 3.5999999999999999996::double precision; id | obj_version | pvalid | pexpires | pamount | pobject | ppassword | prating ----+-------------+--------+----------+---------+---------+-----------+--------- (0 rows)
Nachdem ich mich jetzt zum wiederholten Mal damit rumgeschlagen habe, ist es Zeit, die Lösung zu notieren und auch anderen Leuten zugänglich zu machen.
Nach einem Update von Eclipse und Java konnte ich Tomcat mal wieder nicht über das Eclipse-Plugin von Sysdeo aus starten. Irgendwelche komischen Fehlermeldungen ohne Aussage haben mir auch nicht wirklich geholfen. Wieso genau es jetzt läuft kann ich nicht sagen, aber die aktuelle Konfiguration kann ich angeben:
Der bootclasspath enthält
java/jre/lib/charsets.jar java/jre/lib/jce.jar java/jre/lib/jsse.jar java/jre/lib/plugin.jar java/jre/lib/rt.jar java/jre/lib/sunrsasign.jar
und der classpath
tomcat/server/lib/catalina.jar tomcat/server/lib/commons-logging.jar tomcat/server/lib/jakarta-regexp-1.2.jar tomcat/server/lib/servlets-common.jar tomcat/server/lib/servlets-default.jar tomcat/server/lib/servlets-invoker.jar tomcat/server/lib/servlets-manager.jar tomcat/server/lib/servlets-webdav.jar tomcat/server/lib/tomcat-ajp.jar tomcat/server/lib/tomcat-coyote.jar tomcat/server/lib/tomcat-http11.jar tomcat/server/lib/tomcat-util.jar tomcat/server/lib/warp.jar