5. Februar 2012  
  Suche:
 
  Basics
  Code-Galerie
  Forum
  FAQ
  Tipps & Tricks
  Literatur
  Knowledge Base
  Workshops
  JSP-Hosting
  JSP-Engines
  Jobbörse
  Links
  JSP-Sites
  Newsletter
  JSP-Test
  Impressum
  Username:
  
  Passwort:
  
  

  Jetzt registrieren
  Warum registrieren?

  Valid HTML 4.01!
  Valid CSS!
Forum

Image-reload bei JSP / JSF
 eStudy, 15.03.2010 23:20:47

Hallo an alle,

es ist ja nicht schwer, einzelne Bilder in JSP-Seite anzuzeigen. Gibt es aber eine Möglichkeit die Bildkomponente im Intervall zu Aktualisieren?

Mal angenommen ich lasse einen Thread laufen, der mir immer wieder einen neuen Pfad zu einer Datei (Bild) liefert. Nach erhalt der Pfadangabe, soll nun das Bild neu auf der Seite geladen werden. Quasi wie ein Video nur aber halt als einzelne Bilder. Gleich mal vorne weg: Ich will möchte kein GIF einsetzen oder eine Flash-Anwendung schreiben.

Gruß


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.


Re: Image-reload bei JSP / JSF
 eStudy, 16.03.2010 09:30:39

Ok, ich habe wohl übersehen, dass es hier schon mehrere Anfragen zu diesem Thema gibt (03.02.2010 19:04:56 Bilder im Sekundentakt auf Seite laden , etc).

Hier habe ich noch etwas gefunden:
http://jsfatwork.irian.at/book_de/ajax.html#idx:/ajax.html:6.4.2

mal sehen ob mir das weiterhilft...

Ansonsten würde ich mich trotzdem auf Antworten freuen.



Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 hansi, 16.03.2010 16:17:51

Hi,
http://jsfatwork.irian.at/book_de/ajax.html#idx:/ajax.html:6.4.2

Sieht doch brauchbar aus, nach der Verschreibung ist es doch das, was du suchst. Funktioniert es?

hansi


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 eStudy, 16.03.2010 19:41:53

Hi,

brauchbar sieht es aus aber bei mir bleiben einfach die <composite>-Tags unbekannt. Ich versuche mich noch daran. Fehlen mir da irgendwelche Libs?


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 gandalf, 17.03.2010 08:18:49

was steht denn vor :composite?
und was in der zugehörigen direktive taglib?

gandalf



Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 eStudy, 17.03.2010 15:56:11

Hi,

ich hatte nur den hier vergessen: xmlns:composite="http://java.sun.com/jsf/composite"

allerdings habe ich noch ein Problem mit dem mc-Präfix.
Im Beispiel sieht es so aus: <mc:ajaxPoll interval="950">#{customerBean.time}</mc:ajaxPoll>
Der mc existiert nicht. Hierst mal der komplette Code aus dem Beispiel:

ajaxPoll.xhtml:
--------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:f="http://java.sun.com/jsf/core"
        xmlns:composite="http://java.sun.com/jsf/composite">
<head>
    <title>A collapsible panel composite component</title>
</head>
<body>
<composite:interface>
    <composite:attribute name="interval" required="true"/>
</composite:interface>
<composite:implementation>
    <h:outputScript name="jsf.js" library="javax.faces" target="head"/>
    <h:outputScript name="ajaxPoll.js" library="mygourmet" target="head"/>
    <script type="text/javascript">
    startAjaxPoll('#{cc.clientId}', #{cc.attrs.interval});
    </script>
    <div id="#{cc.clientId}">
      <composite:insertChildren/>
    </div>
</composite:implementation>
</body>
</html>
--------------------------------------

und die ajaxPoll.js:
--------------------------------------
function processPollEvent(interval) {
    return function(data) {
        if (data.status == 'success') {
            startAjaxPoll(data.source.id, interval);
        }
    };
}

function poll(clientId, interval) {
    var element = document.getElementById(clientId);
    element.mgPoll = true;
    jsf.ajax.request(element, null, {render: clientId, onevent: processPollEvent(interval)});
}

function startAjaxPoll(clientId, interval) {
    setTimeout("poll('" + clientId + "', " + interval + ")", interval);
}
--------------------------------------


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 gandalf, 19.03.2010 04:57:26

Tja, typisch MyFaces.
Das Zeugs bringst du nur zum Laufen, wenn du ein/zwei Entwickler von IRIAN mit mietest. ;-)

gandalf


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 werpu, 01.07.2010 14:42:50

Hallo, also ich springe da mal ein, das mit dem Namespace ist hier erklärt

http://jsfatwork.irian.at/semistatic/custom_component.html#!idx:/custom_component.html:5.1

und zwar hast du bei den Compositekomponenten die Möglichkeit diese konfigurationsfrei in einem bestimmten Namespace zu deklarieren, Du musst sie nur unter:

<webapp>/resources/<dein name für das package> zu hosten
das wird dann in einen standardnamespace gemappt:

http://java.sun.com/jsf/composite/<dein name für das package>

also im Falle des jsfatwork beispiels
http://java.sun.com/jsf/composite/

daraus ergibt sich dann der include
<html xmlns:mc="http://java.sun.com/jsf/composite/mygourmet"...

der direkt die composite Komponente mappt.

Ah ja nochwas MyFaces bekommt man auch ohne Consulting von Irian zum Laufen :-)

Ist eigentlich sogar alles da, wenn man Maven verwendet gibts sogar fertige Templates ala:

mvn archetype:generate -DarchetypeCatalog=http://myfaces.apache.org

Das Tutorial von jsfatwork stammt auch von der Irian genauso wie die Examples, nur so als Anmerkung am Rande :-)


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.

Re: Image-reload bei JSP / JSF
 maxpade, 01.07.2010 17:11:27

Hat einer von euch eine Erklärung warum Element = null ausgeworfen wird?
an dieser Stelle:

var element = document.getElementById(clientId);


Ich habe dies:
<mc:ajaxPoll interval="950">#{customer.count}</mc:ajaxPoll>


snip: managed bean

        private int count;

   public int getCount(){
      return count;
   }
   
   public void setCount(int count) {
      this.count = count;

   }

Zudem verschwindet der Wert wieder gleich nachdem er auf der Seite dargestellt wird.

danke
max


Zum Antworten auf einen Beitrag müssen Sie registriert und angemeldet sein.


Legende: Anonymer User     registrierter User     sehr aktiver User

<< zurück 


Hinweis: Auf dieser Seite liegen Links zu anderen Seiten im Internet. Für alle diese Links gilt: Wir betonen ausdrücklich, daß wir keinerlei Einfluß auf die Gestaltung und die Inhalte der gelinkten Seiten haben. Deshalb distanzieren wir uns hiermit ausdrücklich von allen Inhalten aller gelinkten Seiten auf dieser Homepage und machen uns ihre Inhalte nicht zueigen. Diese Erklärung gilt für alle auf unserer Homepage angebrachten Links

Redaktion/Betreiber von JSP-Develop übernehmen keinerlei Gewährleistung und Verantwortung für die Richtig- und/oder Vollständigkeit von den auf den Webseiten JSP-Develop veröffentlichten Source Codes. Die Verantwortung der Verwendung/Anwendung sowie etwaige Modifikation der hier veröffentlichten Sourcen obliegt einzig dem Benutzer der Webseite, welche die veröffentlichten Sourcen in einer Applikation/Anwendung einsetzt. Durch das Kopieren und/oder Benutzen der Sourcen in einer Applikation/Anwendung bzw. etwaigen Abschriften wird dieser Rechtshinweis anerkannt.

Java, JSP, JavaServer Pages, J2EE, EJB, JDBC, JNDI, JTA, Sun, Sun Microsystems are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and in other countries. IBM, WebSphere are trademarks or registered trademarks of International Business Machines Corporation. Other trademarks and registered trademarks are the property of their respective owners.