Problem bei der Anzeige von Bild im FireFox
Ich habe eine JSP-Seite, auf der ich ein div-tag, in dem es ein a IMG-tag. Mit diesen IMG-Tags möchte ich zeigen Sie ein Bild in es. Hier der source-Pfad eines Bildes kommt von der Datenbank, also gab ich eine JSP-variable mit JSP-Scriptlet. Diese JSP variable den source-Pfad eines Bildes.
Dieser Weg der Bild kann verschiedene Rechner oder der gleichen Maschine, d.h. die Bilder gespeichert sind auf dem anderen Rechner oder auf einem Rechner, d.h. auf der lokalen Maschine auf einem anderen Laufwerk.
Das problem ist, dass, wie zu geben Pfad des Bildes gespeichert, auf verschiedene Rechner als auch auf einem Rechner. Ich habe versucht, verschiedene Möglichkeiten, wie, indem Sie die ip-Adresse der Maschine.
Hier ist der Pfad, der von der lokalen Maschine, wo das Bild gespeichert ist
img src= file:\localhost\D:\ScannedSheets\testproj/batch1/IMG001.jpg style="z-index:1; position:absolute; top:0; left:0; width:850; height:1099"
Mit dieser syntax wird das Bild sichtbar im Internet Explorer, aber Mit der gleichen syntax Sein, die nicht sichtbar in FireFox, Google Chrome usw.
Bitte Guide mich in die Freunde.
Mir auch sagen, wie man den Pfad des Bildes gespeichert, auf verschiedene Maschine, die funktioniert In Internet Explorer, FireFox, Google chrome usw.
InformationsquelleAutor Param-Ganak | 2010-05-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht absolute Pfade verwenden, für die img-tags wenn Sie mit der Veröffentlichung dieser Seite im internet. Es wird nicht funktionieren. Verwenden Sie den relativen Pfad statt. Sie müssen speichern Sie Ihre Bild auf der gleichen Verzeichnisebene wie Sie html-Seite. Zum Beispiel, wenn Sie Ihre Seite hier gespeichert: C:\Web\Page.html dann setzen Sie das Bild hier C:\Web\Images\IMG001.jpg.
Und Ihr code sollte wie folgt Aussehen:
EDIT:
Für remote-server mit der Bild-handler:
Müssen Sie implementieren, Bild-handler-wich hat die folowing:
Bekommt image-Pfad aus der db anhand der image id
Renditen-Bild-stream zum client-browser identifiziert Pfad
Sie benötigen web-server, auf den Sie Bild-Maschine für erste Bilder. Und Sie müssen web-handler für das erste Bild-Pfade aus der db
Ich bearbeitet die post. Ich hoffe, es wird helfen
InformationsquelleAutor wassertim
Datei-URIs sollte im format
file://host/path
also für dein Beispiel, es wäreHabe ich versucht es auf IE, Firefox, Opera und es funktioniert. Ich habe nicht Chrome aber ich nehme an, es sollten keine Probleme haben. Es gibt jedoch noch andere überlegungen bei der Verwendung von Datei-URIs, e.g Sie können nicht auf die Bilder auf einem anderen Windows-Rechner, es sei denn, es ist in einem freigegebenen Ordner und die syntax für Dateien auf remote-Maschinen variiert zwischen den Browsern. (Siehe wikipedia für mehr details)
Daher, wenn diese JSP-Datei ist öffentlich zugänglich über das intranet oder internet, sind Sie besser dran Speicherung der Bilder in einer extern zugänglichen Ordner auf dem web-server und referenzieren Sie Sie mit der eine relative oder absolute HTTP-URIs, die in Ihrem IMG-tag(s).
InformationsquelleAutor anonymous
Den
src
- Attribut des HTML -<img>
element sollte auf eine URL, die nicht auf einer lokalen Festplatte die Datei-system-Pfad. Die HTML-Seite ist nämlich heruntergeladen vom server-Rechner zum client-Rechner und analysiert auf der client-Maschine. Alle URL ' s der tritt in die HTML-Seite (z.B. Javascripts, Stylesheets, Bilder, etc.) wäre erneut aufgerufen wird, von der client-Seite auf. Wenn der client auf einer lokalen Festplatte die Datei-system-Pfad, Sie werden versuchen, Suche nach der Datei auf seine eigenen lokalen Festplatte die Datei-system. This ain ' T zur Arbeit zu gehen, wenn der server und der client sind physikalisch verschiedene Maschinen.In Ihrem Fall gibt es zwei Möglichkeiten, um dieses problem zu lösen.
Hinzufügen einer neuen webapplication Kontext zu Ihrem servletcontainer mit den reinen Zweck zu dienen, die statische Dateien. Es ist unklar, welche servletcontainer, die Sie verwenden, aber es ist Tomcat, dann alles, was Sie im Grunde tun müssen, ist, fügen Sie den folgenden
Context
element/conf/server.xml
:Diese Weise sind Sie erreichbar
http://example.com/images/....
.Erstellen Sie eine
Servlet
Klasse, die verwendetjava.io.File
um eineInputStream
von der image-Datei und schreibt Sie in dieOutputStream
von der Antwort. Sie können request-Parameter oder pathinfo zu identifizieren, die das Bild. Hier ist ein einfaches Beispiel-servlet:Karte in
web.xml
auf eineurl-pattern
von zum Beispiel/images/*
. Sie können auf diese Weise Bilder von zum Beispielhttp://example.com/images/filename.jpg
.Anderes Bild servlet-Beispiel finden Sie hier.
InformationsquelleAutor BalusC
Und vergessen Sie nicht, die
ALT
tag:InformationsquelleAutor Skate