Autor Thema: Hintergrundbilder in Tabelle werden nicht angezeigt  (Gelesen 10849 mal)

Offline theBastian

  • Senior Mitglied
  • ****
  • Beiträge: 484
  • Geschlecht: Männlich
Hallo allerseits,

bin gerade bei meinen ersten Gehversuchen mit XPages und habe schon ein (Verständnis)-Problem.

Ich habe ich XPage mit einer Tabelle erstellt. Für jede Zelle habe ich ein anderes Hintergrundbild festgelegt. Öffne ich die Seite im IE und verwende den kompletten Link (also Server/database.nsf/index.xsp) werden die Bilder auch angezeigt.

Dann stelle ich als Startseite für die Datenbank diese XPage ein (index.xsp) und öffne den Link Server/database.nsf dann fehlen die Bilder.

ACL: Default = Reader, Images nicht im Web versteckt.

Ich bin ratlos.  ??? Kann mich jemand erleuchten?  ;)

Sebastian
« Letzte Änderung: 09.05.17 - 15:18:36 von theBastian »
Domino, Notes, Sametime

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #1 am: 09.05.17 - 14:00:20 »
Wie sind die Bilder denn eingebunden in der XPage?

Offline theBastian

  • Senior Mitglied
  • ****
  • Beiträge: 484
  • Geschlecht: Männlich
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #2 am: 09.05.17 - 14:44:12 »
Als Hintergrundbild pro Tabellenzelle festgelegt. Oder was ist gemeint?  ???
Domino, Notes, Sametime

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #3 am: 09.05.17 - 14:46:56 »
Zeig mal deinen XPage-Code. Das macht es einfacher.

Offline theBastian

  • Senior Mitglied
  • ****
  • Beiträge: 484
  • Geschlecht: Männlich
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #4 am: 09.05.17 - 15:00:51 »
Hier mal der Code für eine Tabellenzelle:

Code
<xp:td styleClass="td.service" id="Service" valign="top">
				<xp:this.style><![CDATA[
				width:266px;
				background-image:url(service.jpg);
				background-repeat:no-repeat;
				background-position:bottom right;
				border-right: 1px solid #888888;
				line-height: 200%;
				padding-left:20.0px;width:266px;height:auto;background-image:url(service.jpg);background-repeat:no-repeat;background-position:bottom right]]></xp:this.style>
				<b>Service</b>
				<xp:br></xp:br>
				<xp:br></xp:br>
				<xp:repeat id="repeatService" value="#{LinksService}"
					var="rowDataService" rows="50">
					<xp:link escape="true" id="linkService"
						styleClass="ul.liste" target="_blank">
						<xp:this.value><![CDATA[#{javascript:rowDataService.getDocument().getItemValueString("Link")}]]></xp:this.value>
						<xp:this.title><![CDATA[#{javascript:rowDataService.getDocument().getItemValueString("Linkname")}]]></xp:this.title>
						<xp:this.text><![CDATA[#{javascript:rowDataService.getDocument().getItemValueString("Linkname")}]]></xp:this.text>
					</xp:link>
					<xp:br></xp:br>
				</xp:repeat>
			</xp:td>
Domino, Notes, Sametime

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #5 am: 09.05.17 - 15:11:25 »
Ah ok. Das Problem ist die Referenzierung des Bildes, denn die sind bei Dir ja relativ eingebunden.
Normalerweise ist der Pfad zu der XPage ja sowas:
http://example.com/db.nsf/xpage.xsp

Die von Dir eingebundenen Bilder "ersetzen" dann den Teil bis zum letzten Slash, d.h. aus der URL wird dann vom Browser ein
http://example.com/db.nsf/service.jpg

Wenn Du die Datenbank mit einer Start-XPage öffnest, ist Deine XPage ja zu erreichen unter
http://example.com/db.nsf

Der Browser ändert dann die Links zu den Pfaden der Bilder in
http://example.com/service.jpg

Da liegen die Bilder nicht, der Aufruf geht schief.

Das beste hierfür ist, eine Startseite einzubauen, die eine Weiterleitung auf deine eigentliche XPage macht.
Code
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
	<xp:this.beforePageLoad><![CDATA[#{javascript:context.redirectToPage("xpage.xsp", true)}]]></xp:this.beforePageLoad>
</xp:view>

Dann hast Du dieses Problem (und weitere Refernzierungsprobleme) nicht mehr.


Offline theBastian

  • Senior Mitglied
  • ****
  • Beiträge: 484
  • Geschlecht: Männlich
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #6 am: 09.05.17 - 15:14:39 »
Ah, cool. Werde ich sofort testen.  :) Danke schon mal für Deine Hilfe.
Domino, Notes, Sametime

Offline theBastian

  • Senior Mitglied
  • ****
  • Beiträge: 484
  • Geschlecht: Männlich
Re: Hintergrundbilder in Tabelle werden nicht angezeigt
« Antwort #7 am: 09.05.17 - 15:19:04 »
Schnell umgesetzt und erfolgreich getestet. Danke nochmal.
Domino, Notes, Sametime

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz