<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Schreinert.com</title>
	<atom:link href="http://www.schreinert.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.schreinert.com</link>
	<description>Software-Entwicklung • IT-Projektmanagement  • E-Commerce-Beratung</description>
	<lastBuildDate>Mon, 30 Apr 2012 06:40:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>JavaScript: Alle Checkbox-Felder einer HTML-Seite deaktivieren, aktivieren oder umsetzen (toggle)</title>
		<link>http://www.schreinert.com/javascript-alle-checkbox-felder-einer-html-seite-deaktivieren-aktivieren-oder-umsetzen-toggle-350/</link>
		<comments>http://www.schreinert.com/javascript-alle-checkbox-felder-einer-html-seite-deaktivieren-aktivieren-oder-umsetzen-toggle-350/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 16:44:57 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[Web-Applikationen]]></category>
		<category><![CDATA[checkbox]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Tipp]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=350</guid>
		<description><![CDATA[In meinen Projekten treffe ich zur Zeit verst&#228;rkt auf Web-Seiten, auf denen sehr viele Punkte per Checkbox zu aktivieren oder zu deaktivieren sind. Nachdem ich nur jede einzelen der &#252;ber 50 Checkboxen anklicken m&#246;chte, habe ich hierf&#252;r einen kleinen, simplen JavaScript-Code zusammengeschrieben, um alle Checkboxen zu aktivieren, zu deaktivieren oder zu &#228;ndern.]]></description>
			<content:encoded><![CDATA[<p>In meinen Projekten treffe ich zur Zeit verst&#228;rkt auf Web-Seiten, auf denen sehr viele Punkte per Checkbox zu aktivieren oder zu deaktivieren sind.<br />
Nachdem ich nur jede einzelen der &#252;ber 50 Checkboxen anklicken m&#246;chte, habe ich hierf&#252;r einen kleinen, simplen JavaScript-Code zusammengeschrieben, um alle Checkboxen zu aktivieren, zu deaktivieren oder zu &#228;ndern.</p>
<pre class="brush: jscript; title: ; notranslate">
// hier die gew&#252;nschte Form w&#228;hlen (erste Form = 0 )
var form = document.forms[0];
//var action = 'activate';
//var action = 'deactivate';
var action = 'toggle';

var inputs = form.getElementsByTagName(&quot;input&quot;);

for ( i=0 ; i &lt; inputs.length ; i++ ) {

    input = inputs[i];

    // nur Checkboxen betrachten
    if ( input.type != 'checkbox' ) {
        continue;
    }
    if ( action == 'activate' ) {
        value = true;
    } else if ( action == 'deactivate' ) {
        value = false;
    } else if ( action == 'toggle' ) {
        value = !input.checked;
    } else {
        // console.info('Ung&#252;ltiger Wert f&#252;r action');
        value = input.checked;
    }

    input.checked=value;

}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/javascript-alle-checkbox-felder-einer-html-seite-deaktivieren-aktivieren-oder-umsetzen-toggle-350/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lokalen Windows-Ordner als Laufwerk permanent einbinden &#8211; Windows Server 2008</title>
		<link>http://www.schreinert.com/lokalen-windows-ordner-als-laufwerk-permanent-einbinden-windows-server-2008-338/</link>
		<comments>http://www.schreinert.com/lokalen-windows-ordner-als-laufwerk-permanent-einbinden-windows-server-2008-338/#comments</comments>
		<pubDate>Fri, 20 May 2011 14:33:10 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[Laufwerk]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Tipp]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=338</guid>
		<description><![CDATA[Unter einem Windows Server 2008, welcher via Terminal Server erreichbar ist, wollte ich einen lokalen Ordner als Laufwerk einbinden. Nicht passende L&#246;sungsoptionen: 1.) Freigabe des Ordners als Netzlaufwerk und anschlie&#223;end als Netzlaufwerk einbinden Problem 1: Das Laufwerk soll f&#252;r alle Anwender freigegeben sein, es war aber nur f&#252;r mich sichtbar Problem 2: Die Anmeldung erfolgte [...]]]></description>
			<content:encoded><![CDATA[<p>Unter einem Windows Server 2008, welcher via Terminal Server erreichbar ist, wollte ich einen lokalen Ordner als Laufwerk einbinden. </p>
<p>Nicht passende L&#246;sungsoptionen:</p>
<p>1.) Freigabe des Ordners als Netzlaufwerk und anschlie&#223;end als Netzlaufwerk einbinden<br />
Problem 1: Das Laufwerk soll f&#252;r alle Anwender freigegeben sein, es war aber nur f&#252;r mich sichtbar<br />
Problem 2: Die Anmeldung erfolgte mit anderen User-Daten, bei dem sich das Kennwort regelm&#228;&#223;ig &#228;ndert</p>
<p>2.) Einbinden mit dem DOS-Befehl subst. Diese auf den ersten Blick perfekte L&#246;sung scheiterte daran, dass die Freigabe nur f&#252;r den aktuellen Anwender in der aktuellen Sitzung g&#252;ltig war. Nach dem Abmelden war der Laufwerksbuchstabe wieder weg.</p>
<p>L&#246;sung:</p>
<p>Ich habe einen Eintrag in die Registrierdatenbank (registry) eintragen k&#246;nnen, so dass nun f&#252;r alle Anwender und nach jedem Neustart ein Ordner als lokales Laufwerk verf&#252;gbar war:</p>
<p>Beispiel:<br />
Ich m&#246;chte den folgenden Ordner als Laufwerk &#8220;E:&#8221; einbinden: D:\ordner1\suborder2</p>
<p>Dazu ist ein neuer Eintrag (&#8220;Zeichenkette&#8221;) in folgendem Registry-Baum einzutragen:</p>
<p><code>HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices</code></p>
<p>Als Name der Zeichenkette den Laufwerksbuchstaben einschlie&#223;lich dem Doppelpunkt eintragen. Im Beispiel also &#8220;E:&#8221;<br />
Der Wert des neuen Eintrags beginnt immer mit &#8220;\??\&#8221; gefolgt vom Pfad. Im Beispiel ist dies &#8220;\??\D:\ordner1\subordner2&#8243;</p>
<p>Nun noch den Server durchstarten und schon ist das Laufwerk permanent eingebunden.</p>
<p>Danke an <a href="http://www.windowsreference.com/windows-vista/how-to-map-a-fake-drive-letter-to-a-folder-in-vistaxp/">Windows Reference</a> f&#252;r den Tipp!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/lokalen-windows-ordner-als-laufwerk-permanent-einbinden-windows-server-2008-338/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL-Server: DDL erzeugen f&#252;r alle Datenbank-Tabellen im MS SQL Server</title>
		<link>http://www.schreinert.com/sql-server-ddl-erzeugen-fuer-alle-datenbank-tabellen-im-ms-sql-server-331/</link>
		<comments>http://www.schreinert.com/sql-server-ddl-erzeugen-fuer-alle-datenbank-tabellen-im-ms-sql-server-331/#comments</comments>
		<pubDate>Tue, 22 Feb 2011 17:16:25 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[Tipp]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=331</guid>
		<description><![CDATA[Hier eine SQL-Anweisung f&#252;r den MS SQL Server Version 2005, um alle Tabellen-Beschreibungen einer Datenbank zu exportieren:]]></description>
			<content:encoded><![CDATA[<p>Hier eine SQL-Anweisung f&#252;r den MS SQL Server Version 2005, um alle Tabellen-Beschreibungen einer Datenbank zu exportieren:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT c.* FROM
  INFORMATION_SCHEMA.TABLES t
  JOIN INFORMATION_SCHEMA.COLUMNS c ON
     c.table_name=t.table_name
       AND c.table_schema=t.table_schema
       AND c.table_catalog=t.table_catalog
WHERE
	t.TABLE_TYPE='BASE TABLE'
ORDER BY c.TABLE_CATALOG,c.TABLE_SCHEMA,c.TABLE_NAME,c.ORDINAL_POSITION
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/sql-server-ddl-erzeugen-fuer-alle-datenbank-tabellen-im-ms-sql-server-331/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Query-Timeout im SQL Server Management Studio Express</title>
		<link>http://www.schreinert.com/query-timeout-im-microsoft-sql-server-management-studio-express-322/</link>
		<comments>http://www.schreinert.com/query-timeout-im-microsoft-sql-server-management-studio-express-322/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 17:41:56 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Sonstiges]]></category>
		<category><![CDATA[Tipps und Tricks]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=322</guid>
		<description><![CDATA[F&#252;r eine l&#228;nger dauernde SQL-Abfragen an einem Microsoft SQL Server (Version 2005) hatte ich mit dem SQL Server Management Studio Express das Problem, dass nach 30 Sekunden die Datenbank-Abfrage wegen eines Timeouts abbrach. &#220;ber die Windows-Registry l&#228;sst sich der Default-Wert erh&#246;hen: &#220;ber den folgenden Pfad findet sich der Schl&#252;ssel mit dem Namen &#8220;SQLQueryTimeout&#8221;: HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL [...]]]></description>
			<content:encoded><![CDATA[<p>F&#252;r eine l&#228;nger dauernde SQL-Abfragen an einem Microsoft SQL Server (Version 2005) hatte ich mit dem <em>SQL Server Management Studio Express</em> das Problem, dass nach 30 Sekunden die Datenbank-Abfrage wegen eines Timeouts abbrach. &#220;ber die Windows-Registry l&#228;sst sich der Default-Wert erh&#246;hen:</p>
<p>&#220;ber den folgenden Pfad findet sich der Schl&#252;ssel mit dem Namen &#8220;SQLQueryTimeout&#8221;:</p>
<blockquote><p>
HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM\DataProject
</p></blockquote>
<p>Dieser steht standardm&#228;&#223;ig auf 30 (Sekunden) und kann &#252;ber einen Doppel-Klick erh&#246;ht werden.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/query-timeout-im-microsoft-sql-server-management-studio-express-322/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>javax.security.auth.login.FailedLoginException: The storage control block address is invalid.</title>
		<link>http://www.schreinert.com/javax-security-auth-login-failedloginexception-the-storage-control-block-address-is-invalid-318/</link>
		<comments>http://www.schreinert.com/javax-security-auth-login-failedloginexception-the-storage-control-block-address-is-invalid-318/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 18:29:12 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Exception]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Tomcat]]></category>
		<category><![CDATA[WebSphere]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=318</guid>
		<description><![CDATA[F&#252;r eine Web-Anwendung erlaube ich die Anmeldung via Windows-/Active Directory Login-Daten. Nun geschah es, dass sich ein Anwender nicht mit seinen g&#252;ltigen Login-Daten am System anmelden konnte. Im Log fand sich diese Fehlermeldung: javax.security.auth.login.FailedLoginException: The storage control block address is invalid Das Problem war, dass der Account des Anwenders nur f&#252;r bestimmte Workstations freigegeben war. [...]]]></description>
			<content:encoded><![CDATA[<p>F&#252;r eine Web-Anwendung erlaube ich die Anmeldung via Windows-/Active Directory Login-Daten. Nun geschah es, dass sich ein Anwender nicht mit seinen g&#252;ltigen Login-Daten am System anmelden konnte. Im Log fand sich diese Fehlermeldung:</p>
<blockquote><p>javax.security.auth.login.FailedLoginException: <strong>The storage control block address is invalid</strong></p></blockquote>
<p>Das Problem war, dass der Account des Anwenders nur f&#252;r bestimmte Workstations freigegeben war. Da der ApplicationServer auf einer anderen Maschine l&#228;uft, konnte sich der Anwender auch nicht anmelden.</p>
<p>Herausfinden l&#228;sst sich dies &#252;ber einen Windows-Command mit folgenden Befehl (userid bitte ersetzen:</p>
<pre>net user /domain userid
....
Workstations allowed         All
....
</pre>
<p>Die Zeile &#8220;Workstations allowed&#8221; sollte &#8220;All&#8221; enthalten oder mindestens den Namen des Servers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/javax-security-auth-login-failedloginexception-the-storage-control-block-address-is-invalid-318/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WebSphere V5.1 and SQL Server 2005 &#8211; The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 1 (&#8220;&#8221;): Data type 0&#215;38 is unknown.</title>
		<link>http://www.schreinert.com/websphere-v5-1-and-sql-server-2005-the-incoming-tabular-data-stream-tds-remote-procedure-call-rpc-protocol-stream-is-incorrect-parameter-1-data-type-0x38-is-unknown-311/</link>
		<comments>http://www.schreinert.com/websphere-v5-1-and-sql-server-2005-the-incoming-tabular-data-stream-tds-remote-procedure-call-rpc-protocol-stream-is-incorrect-parameter-1-data-type-0x38-is-unknown-311/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 18:17:42 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[JDBC]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[WebSphere]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=311</guid>
		<description><![CDATA[Heute bin ich auf das Problem gesto&#223;en, dass eine Datenbank-Anfrage an einen Microsoft SQL-Server Version 2005 mit der Fehlermeldung scheiterte: [IBM][SQLServer JDBC Driver][SQLServer]The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 1 (&#8220;&#8221;): Data type 0&#215;38 is unknown. Das Problem liegt in einem Treiber-Konflikt: Ich verwende den JDBC-Treiber f&#252;r [...]]]></description>
			<content:encoded><![CDATA[<p>Heute bin ich auf das Problem gesto&#223;en, dass eine Datenbank-Anfrage an einen Microsoft SQL-Server Version 2005 mit der Fehlermeldung scheiterte:</p>
<blockquote><p>[IBM][SQLServer JDBC Driver][SQLServer]The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 1 (&#8220;&#8221;): Data type 0&#215;38 is unknown.</p></blockquote>
<p>Das Problem liegt in einem Treiber-Konflikt: Ich verwende den JDBC-Treiber f&#252;r den SQL-Server 2000, habe aber einen SQL-Server 2005. Laut <a href="http://support.microsoft.com/kb/915834">Microsoft</a> tritt dieses Problem auf, wenn zuerst der &#8220;alte&#8221; Treiber geladen wird.</p>
<p>L&#246;sungen:</p>
<ul>
<li>Den korrekten JDBC-Treiber von MS installieren &#8212; dies klappte bei mir aber nicht, da die Verbindung via JNDI auf einem IBM WebSphere Application Server V5.1 erfolgte. Erst ab dem <a href="http://www-01.ibm.com/support/docview.wss?uid=swg21254636">WebSphere 6.1 wird auch der SQL-Server 2005</a> unterst&#252;tzt.</li>
<li>Anfragen vermeiden, die zu dem Konflikt f&#252;hren &#8212; bei mir ging dies, in dem ich bei einem createStatement die zus&#228;tzlichen Parameter entfernte.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/websphere-v5-1-and-sql-server-2005-the-incoming-tabular-data-stream-tds-remote-procedure-call-rpc-protocol-stream-is-incorrect-parameter-1-data-type-0x38-is-unknown-311/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ermitteln der MS SQL-Server Version und des Produktlevels</title>
		<link>http://www.schreinert.com/ermitteln-der-ms-sql-server-version-und-des-produktlevels-276/</link>
		<comments>http://www.schreinert.com/ermitteln-der-ms-sql-server-version-und-des-produktlevels-276/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 17:34:48 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=276</guid>
		<description><![CDATA[&#220;ber folgende SQL-Statements l&#228;sst sich die Version des verbundenen Microsoft SQL-Servers ermitteln: Alternativ kann man auch diesen Ausdruck absetzen: Weitere Infos gibts bei Microsoft im KB321185]]></description>
			<content:encoded><![CDATA[<p>&#220;ber folgende SQL-Statements l&#228;sst sich die Version des verbundenen Microsoft SQL-Servers ermitteln:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT SERVERPROPERTY('productversion'),
       SERVERPROPERTY ('productlevel'),
       SERVERPROPERTY ('edition')
</pre>
<p>Alternativ kann man auch diesen Ausdruck absetzen:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT @@VERSION
</pre>
<p>Weitere Infos gibts bei Microsoft im <a href="http://support.microsoft.com/kb/321185">KB321185</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/ermitteln-der-ms-sql-server-version-und-des-produktlevels-276/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java Content Repository API (JCR) mit Jackrabbit</title>
		<link>http://www.schreinert.com/java-content-repository-jcr-mit-jackrabbit-268/</link>
		<comments>http://www.schreinert.com/java-content-repository-jcr-mit-jackrabbit-268/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 13:05:57 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Produkt-Tests]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Derby]]></category>
		<category><![CDATA[Jackrabbit]]></category>
		<category><![CDATA[JCR]]></category>
		<category><![CDATA[Liferay]]></category>
		<category><![CDATA[Mirage]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=268</guid>
		<description><![CDATA[In einem aktuellen Projekt habe ich als Herausforderung, eine gro&#223;e Menge an Daten zu speichern, wobei sich das Datenschema h&#228;ufig &#228;ndern kann. In diesem Zusammenhang habe ich die OpenSource-Implementierung &#8221; Jackrabbit&#8221; (v1.6.0) des Java Content Repository API (JCR, JSR-170) beispielhaft angebunden.Zu Beginn m&#252;ssen (wie immer) die abh&#228;ngigen Bibliotheken eingebunden werden. Dies geschieht einfach per Apache [...]]]></description>
			<content:encoded><![CDATA[<p>In einem aktuellen Projekt habe ich als Herausforderung, eine gro&#223;e Menge an Daten zu speichern, wobei sich das Datenschema h&#228;ufig &#228;ndern kann. In diesem Zusammenhang habe ich die OpenSource-Implementierung &#8221; <a href="http://jackrabbit.apache.org/">Jackrabbit</a>&#8221; (v1.6.0) des Java Content Repository API (JCR, <a href="http://jcp.org/aboutJava/communityprocess/final/jsr170/index.html">JSR-170</a>) beispielhaft angebunden.<img src="http://www.schreinert.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" />Zu Beginn m&#252;ssen (wie immer) die abh&#228;ngigen Bibliotheken eingebunden werden. Dies geschieht einfach per <a href="http://maven.apache.org/">Apache Maven</a> oder per folgender Liste:</p>
<ul>
<li> <a href="http://jackrabbit.apache.org/">jackrabbit-core</a>: Die Implementierung des JSR-170 Standards</li>
<li> <a href="http://commons.apache.org/collections/">commons-collections</a>: Bekanntes &#8220;commons&#8221; Paket f&#252;r Datenstrukturen</li>
<li> <a href="http://g.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html">concurrent</a>: Bibliothek f&#252;r Concurrent Programming</li>
<li>jcr: Die JSR-170 API</li>
<li>log4j: Der bekannte Logger</li>
<li>slfj4: Simple Logging Facade for Java</li>
<li>xerces: XML Parser</li>
<li> <a href="http://db.apache.org/derby/">derby</a>: Wenn der Workspace in einer Datenbank liegen soll.</li>
</ul>
<p>Auf den Projektseiten von Jackrabbit empfiehlt sich zu Beginn die treffende genannte Seite &#8221; <a href="http://jackrabbit.apache.org/first-hops.html">First Hops</a>&#8220;, auf der drei einfache Beispiele f&#252;r die Verwendung des JCR gelistet sind: Der erste &#8220;Login&#8221;, das Anlegen und Abfragen von Daten und das Importieren einer XML-Quelle. Vor der ersten Verwendung muss aber noch das Repository konfiguriert sein. Jackrabbit sucht standardm&#228;&#223;ig im Klassenpfad nach einer Daten namens repository.xml. Auf den Projektseiten lassen sich die <a href="http://jackrabbit.apache.org/jackrabbit-configuration.html">Einstellungen</a> genau nachlesen, f&#252;r den ersten Einsatz empfiehlt sich die <a href="http://jackrabbit.apache.org/jackrabbit-configuration.data/repository.xml">Standard-Datei</a>.</p>
<p>Hilfreich f&#252;r die ersten Spr&#252;nge mit Jackrabbit ist auch die IBM-Seite &#8221; <a href="http://www.ibm.com/developerworks/java/library/j-jcr/">Introducing the Java Content Repository API</a>&#8220;.</p>
<p>F&#252;r mein Projekt hat sich gezeigt, dass der Import von mehreren tausend Knoten mehrere Minuten ben&#246;tigen und zudem der RAM-Speicherbedarf sehr stark ansteigt. So kam bereits beim Versuch 5.000 Knoten mit je 160 Properties ein Out-Of-Memory &#8212; bei 1 GB bereitgestelltem Hauptspeicher.</p>
<p>Wer das JCR f&#252;r die Verwaltung von Inhalten (Content-Management) einsetzen m&#246;chte, kann einen Blick auf das Projekt &#8221; <a href="https://mirage.dev.java.net/">mirage</a>&#8221; werfen. Aufbauend auf Jackrabbit und einer Workflow-API bietet Mirrage die M&#246;glichkeit, Content zu verwalten. Wer den Einsatz genauer sehen m&#246;chte, kann sich die Content-Management-Portlets des <a href="http://www.google.de/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fwww.liferay.com%2F&amp;ei=PNa0SobGC4_K_gaW4I2pDQ&amp;usg=AFQjCNHQReSNMvnqwn1FuHnufm1cnVHGMw">Liferay Portals</a> genauer anschauen. Diese verwenden n&#228;mlich &#8220;mirage&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/java-content-repository-jcr-mit-jackrabbit-268/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache Derby DB: Daten verschl&#252;sseln f&#252;r mehr Sicherheit</title>
		<link>http://www.schreinert.com/apache-derby-db-daten-verschluesseln-fuer-mehr-sicherheit-233/</link>
		<comments>http://www.schreinert.com/apache-derby-db-daten-verschluesseln-fuer-mehr-sicherheit-233/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 14:32:21 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Tipps und Tricks]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Datenbank]]></category>
		<category><![CDATA[Derby]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Tipp]]></category>
		<category><![CDATA[Verschlüsselung]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=233</guid>
		<description><![CDATA[Vor einiger Zeit hatte ich die Anforderung an eine Datenbank, die gespeicherten Daten verschl&#252;sselt auf der Platte abzulegen, um so mehr Schutz vor unberechtigtem Zugriff zu bieten. Das Datenbankmanagement-System Apache Derby (z.B. Version 10.2) erm&#246;glicht es, diese Anforderung der verschl&#252;sselten Daten zu erf&#252;llen. Die Einrichtung und der Zugriff der verschl&#252;sselten Derby Datenbank ist vergleichsweise simpel: [...]]]></description>
			<content:encoded><![CDATA[<p>Vor einiger Zeit hatte ich die Anforderung an eine Datenbank, die gespeicherten Daten verschl&#252;sselt auf der Platte abzulegen, um so mehr Schutz vor unberechtigtem Zugriff zu bieten. Das Datenbankmanagement-System Apache Derby (z.B. Version 10.2) erm&#246;glicht es, diese Anforderung der verschl&#252;sselten Daten zu erf&#252;llen.<img src="http://www.schreinert.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /></p>
<p>Die Einrichtung und der Zugriff der verschl&#252;sselten Derby Datenbank ist vergleichsweise simpel: Zum JDBC-Connect String werden die zwei Parameter<code> dataEncryption=true </code>und <code>bootPassword=2NGWGv.... </code>hinzugef&#252;gt, z.B.</p>
<p><code>jdbc:derby:MyDB;create=true;dataEncryption=true;bootPassword=</code><code>2NGWGv</code></p>
<p>Hier ein Screenshot, wie ich die Verschl&#252;sselung im Eclipse Data Source Explorer eingebunden habe:</p>
<p><a href="http://www.schreinert.com/files/eclipse-verschluesselte-datenbank.jpg"><img src="http://www.schreinert.com/files/eclipse-verschluesselte-datenbank-550x417.jpg" alt="" width="440" height="334" /></a></p>
<p>&#220;ber den zus&#228;tzlichen Parameter <code>encryptionAlgorithm </code>l&#228;sst sich noch der Verschl&#252;sselungs-Algorithmus angeben. Weitere Informationen zu diesem Parameter gibt es in den <a href="http://db.apache.org/derby/docs/10.2/ref/rrefattrib60346.html">Derby-Docs</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/apache-derby-db-daten-verschluesseln-fuer-mehr-sicherheit-233/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Neue Mercedes E-Klasse (Modell) als Dankesch&#246;n</title>
		<link>http://www.schreinert.com/neue-mercedes-e-klasse-modell-als-dankeschoen-193/</link>
		<comments>http://www.schreinert.com/neue-mercedes-e-klasse-modell-als-dankeschoen-193/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 11:36:22 +0000</pubDate>
		<dc:creator>Stefan Schreinert</dc:creator>
				<category><![CDATA[Neuigkeiten]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Danke]]></category>
		<category><![CDATA[E-Klasse]]></category>
		<category><![CDATA[Modell]]></category>
		<category><![CDATA[Projekt]]></category>

		<guid isPermaLink="false">http://www.schreinert.com/?p=193</guid>
		<description><![CDATA[Nach mehrj&#228;hriger T&#228;tigkeit f&#252;r einen schw&#228;bischen Automobilbauer bzw. f&#252;r die IT-Forschung haben sich nun unsere Wege getrennt. Als kleines aber sehr nettes Abschiedsgeschenk habe ich ein Modell der neuen E-Klasse erhalten. Hier einige Fotos: Vielen Dank an Andreas, Alex, Thomas, Ingo, Marcus, Erich, Cord, Jochen und Phillip! So, jetzt muss ich nur noch an der [...]]]></description>
			<content:encoded><![CDATA[<p>Nach mehrj&#228;hriger T&#228;tigkeit f&#252;r einen schw&#228;bischen Automobilbauer bzw. f&#252;r die IT-Forschung haben sich nun unsere Wege getrennt. Als kleines aber sehr nettes Abschiedsgeschenk habe ich ein Modell der neuen E-Klasse erhalten. Hier einige Fotos:</p>
<p><span id="more-193"></span></p>
<p><a href="http://www.schreinert.com/files/e-klasse-3-p1170940.jpg"><img src="http://www.schreinert.com/files/e-klasse-3-p1170940-550x268.jpg" alt="" /></a></p>
<p><a href="http://www.schreinert.com/files/e-klasse-1-p1170963.jpg"><img src="http://www.schreinert.com/files/e-klasse-1-p1170963-550x268.jpg" alt="" /></a></p>
<p><a href="http://www.schreinert.com/files/e-klasse-2-p1170957.jpg"><img src="http://www.schreinert.com/files/e-klasse-2-p1170957-550x268.jpg" alt="" /></a></p>
<p><a href="http://www.schreinert.com/files/e-klasse-hinten-p1170968.jpg"><img src="http://www.schreinert.com/files/e-klasse-hinten-p1170968-550x268.jpg" alt="" /></a></p>
<p><a href="http://www.schreinert.com/files/e-klasse-4-p1170939.jpg"><img src="http://www.schreinert.com/files/e-klasse-4-p1170939-550x269.jpg" alt="" /></a></p>
<p>Vielen Dank an Andreas, Alex, Thomas, Ingo, Marcus, Erich, Cord, Jochen und Phillip!</p>
<p>So, jetzt muss ich nur noch an der etwas gr&#246;&#223;eren E-Klasse arbeiten <img src='http://www.schreinert.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Hier habe ich &#252;brigens <a href="http://blog.auto-motor-und-sport.de/enttarnt-das-neue-mercedes-e-klasse-t-modell/">Bilder vom T-Modell</a> gefunden.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schreinert.com/neue-mercedes-e-klasse-modell-als-dankeschoen-193/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
