Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:howto:open_folder
Übersetzungen dieser Seite:

**Dies ist eine alte Version des Dokuments!** ----

A PCRE internal error occured. This might be caused by a faulty plugin

= Zugriff auf Ordner in der Trefferliste = ;Zusatzfeature: mit einem Mausklick den Ordner mit der gefundenen Datei zu öffnen ;Lösungsansatz: zu jedem Treffer der Desktop-Suche einen Link zum Ordner, ähnlich wie <search:hit_link/> in der Trefferliste erstellen ;Vorteile: Zusatzkomfort bei der Verwaltung von Dateien ;Quelltext: /* * regain - A file search engine providing plenty of formats * Copyright (C) 2004 Til Schneider, abgeändert von itebob * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Contact: Til Schneider, info@murfman.de * * CVS information: * =RCSfile: UrlTag.java,v = * =Source: /cvsroot/regain/regain/src/net/sf/regain/search/sharedlib/hit/UrlTag.java,v = * =Date: 2006/01/19 21:03:32 = * =Author: til132 = * =Revision: 1.4 = */ package net.sf.regain.search.sharedlib.hit; import net.sf.regain.RegainException; import net.sf.regain.search.SearchToolkit; import net.sf.regain.search.results.SearchResults; import net.sf.regain.util.sharedtag.PageRequest; import net.sf.regain.util.sharedtag.PageResponse; import org.apache.lucene.document.Document; /** * Generates the URL of the current hit's document. * * The URL is generated as plain text not as a link. If you want a link use the * link tag. * * @see LinkTag * * @author Til Schneider, www.murfman.de */ public class <span style="color:green">DirTag</span> extends AbstractHitTag { /** * Generates the tag. * * @param request The page request. * @param response The page response. * @param hit The current search hit. * @param hitIndex The index of the hit. * @throws RegainException If there was an exception. */ protected void printEndTag(PageRequest request, PageResponse response, Document hit, int hitIndex) throws RegainException { // Get the search results SearchResults results = SearchToolkit.getSearchResults(request); String url = results.getHitUrl(hitIndex); <span style="color:green">// Dir_Verweis_erstellen Anfang</span> String url_dir = ""; String url_array[] = url.split("/"); for (int i = 0; i < url_array.length-1; i++) { url_dir = url_dir+url_array[i]+"/"; } url =url_dir; <span style="color:green">// Dir_Verweis_erstellen Ende</span> response.print(url); } } In der Datei ''search.jsp'' wird ein Link <a href="file://<span style="color:green"><search:hit_dir/></span>" target="_blank">Link zum Ordner</a> platziert. ;Autor: [http://regain.murfman.de/wiki/de/index.php/Benutzer:Itebob itebob] ==Implementierung== eine Klasse ''DirTag'', die von der Klasse net.sf.regain.search.sharedlib.hit/''AbstractHitTag'' abgeleitet ist, erstellen und im Ordner ''net/sf/regain/search/sharedlib/hit'' in der Datei ''regain.jar'' ablegen. Als fertige Vorlage kann dabei die Klasse net.sf.regain.search.sharedlib.hit/''UrlTag.java'' dienen. ;Änderungen im Quelltext: // Dir_Verweis_erstellen Anfang String url_dir = ""; String url_array[] = url.split("/"); for (int i = 0; i < url_array.length-1; i++) { url_dir = url_dir+url_array[i]+"/"; } url =url_dir; // Dir_Verweis_erstellen Ende ;[http://forum.murfman.de/de/viewtopic.php?t=220 Diskussion zum Hack]: ==für Firefox-User== Falls Sie Firefox unter Windows einsetzen, erscheint im Kontextmenü nach dem Rechtsklick auf den Verweis <span style="color:green">'Link zum Ordner'</span> ein Menüpunkt 'Launchy -> Ziel mit Explorer ducrhsuchen', falls Sie die Erweiterung [http://www.erweiterungen.de/detail/Launchy/ Launchy] installiert haben. Mit der Auswahl des Menüpunkts öffnet sich der Ordner mit der gefundenen Datei im Windows Explorer. Sie können auch 'Launchy -> Link im Internet Explorer öffnen' auswählen - das Ergebnis ist gleich ;-) Alternativ kann man [http://www.erweiterungen.de/detail/ViewSourceWith/ ViewSourceWith]-Erweiterung einsetzen, die einfacher zu kofigurieren ist. S. dazu [[Regain-Hack: Treffer mit der gewünschten Anwendung öffnen]]. ==Einschränkungen== * Im Internet Explorer Version 6.0 SP2 ist es nicht möglich, mit einem Klick auf den Link ein Ordner zu öffnen, falls der Ordner auf dem Laufwerk C:/ oder D:/ liegt. In diesen Fällen kann man den Link zum Ordner mit der rechten Maustaste anklicken, im Kontextmenü 'Verknüpfung kopieren' wählen und diese Verknüpfung in der Adressleiste im Browser direkt eingeben, danach 'Wechseln zu' oder Eingabetaste betätigen. * der hier beschiriebene Hack funktioniert am komfortabelsten dann, wenn ein Zugriff auf ein file://-URL im Browser erlaubt ist. Falls dies nicht der Fall ist, kann man den oben beschriebenen Trick mit 'Verknüpfung kopieren' anwenden oder mit Firefox-Browser die Launchy-Erweiterung installieren. * es ist nicht möglich, gleichzeitig diesen Hack in der ''search.jsp'' und <rewriteRules> in der ''SearchConfiguration.xml'' anzuwenden - außer, wenn das Ergebnis von RewriteRules im Zusammenspiel mit <search:hit_dir/> einen Pfad generieren, der zu einem existirenden Ordner führt ==Weiterentwicklung== Eine step-by-step-Anleitung, die hilft im Browser die oben geschilderte Einschränkung 2 zu beseitigen, wäre sehr wünschenswert ==Weblinks== * [http://forum.murfman.de/de/viewtopic.php?t=220 Diskussion zum Hack] * [http://www.supportnet.de/fresh/2005/1/id987764.asp Einen Link auf Ordner und nicht auf Datei]

de/howto/open_folder.1236283173.txt.gz · Zuletzt geändert: 2024/09/18 08:32 (Externe Bearbeitung)