FraFu: Equivalen zu PHPs ob_start, ob_end, ...

Hallo!

Gibt es in JSP ein Equivalenz zu ob_start, ob_end, ... in php?

Oder wie löst man folgendes Problem in JSP?

In einer index.jsp sollen abhängig von übergebenen Parametern verschiedene jsps eingebunden werden.
zb:
if(request.getParameter("getTable").equals("1")){
   pageContext.include("table.jsp");
}
in table.jsp wird zb nur eine Tabelle ohne HTML Header/Footer erzeugt. Also keine HTML Seite, die für sich alleine stehen kann.
In table.jsp werden jetzt aber auch noch Variablen gesetzt, die besagen, dass bestimmte js und css Files benötigt werden.
Dh ich kann den HTML Header erst einbinden, nachdem ich table.jsp abgearbeitet habe um dem header.jsp sagen zu können, welche Teile ich im Header benötige. Dazu würde ich den HTML Code den pageContext.include ausgibt gerne in einem String cachen, dann erst header.jsp einbinden und ebenfalls cachen und dann zuerst den String mit dem Header ausgeben und anschl. erst den String mit table.jsp ausgeben.

In PHP hab ich das so gelöst:

  
  if($_GET['param']=="table"){  
 ob_start();  
 include("table.php");  // hier wird zb neededCSS[]="table.css" gesetzt  
 $table=ob_get_clean();  
  }  
  ob_start();  
  include("header.php");  // hier wird jetzt aufgrund von needeCSS das in table.php gesetzt wurde,  
                          // table.css im Header eingebunden.  
  $header=ob_get_clean();  
  
  echo $header.$table;  
  

Was würdet ihr für eine Vorgangsweise bei JSP vorschlagen?

mfg
  frafu

  1. hi,

    Gibt es in JSP ein Equivalenz zu ob_start, ob_end, ... in php?

    Diese Funktionen werden in PHP als "output buffering" bezeichnet.

    Dieses Stichwort mit JSP kombiniert, lässt Google bspw. http://www.exforsys.com/tutorials/jsp/jsp-out-object-methods.html ausspucken - schau mal, ob sich damit was anfangen lässt.

    Was würdet ihr für eine Vorgangsweise bei JSP vorschlagen?

    Wenn Manipulation des Ausgabepuffers "nötig" wird, halte ich erst mal, egal in welcher Sprache, den Scriptaufbau für überdenkenswert ...

    In PHP können per include eingebundene Scripte übrigens auch Rückgabewerte liefern, man muss sie nicht direkt in den Ausgabepuffer schreiben lassen.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Hallo!

      Wenn Manipulation des Ausgabepuffers "nötig" wird, halte ich erst mal, egal in welcher Sprache, den Scriptaufbau für überdenkenswert ...

      Dasselbe denke ich mir ja auch. Desswegen auch meine Erklärung warum ich Outputbuffering brauche (oder glaube es zu brauchen) und ob es Alternativen zu meiner Vorgangsweise gibt.

      Danke für deinen Link! Ich hab auch gegoogelt aber einfach nichts passendes gefunden.

      mfg
        frafu

      1. hi,

        Wenn Manipulation des Ausgabepuffers "nötig" wird, halte ich erst mal, egal in welcher Sprache, den Scriptaufbau für überdenkenswert ...

        Dasselbe denke ich mir ja auch. Desswegen auch meine Erklärung warum ich Outputbuffering brauche (oder glaube es zu brauchen) und ob es Alternativen zu meiner Vorgangsweise gibt.

        Na vielleicht kann man die Inhalte, die ausgegeben werden sollen, ja zunächst mal auch nur in Variablen ablegen (im include) - und dann erst nachher "rauspusten" ...?

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Hallo!

          Na vielleicht kann man die Inhalte, die ausgegeben werden sollen, ja zunächst mal auch nur in Variablen ablegen (im include) - und dann erst nachher "rauspusten" ...?

          War auch mein Gedanke. Damit verfällt aber der Vorteil von JSPs gegenüber Servlets.

          mfg
            frafu

    2. Hallo wahsaga.

      Was würdet ihr für eine Vorgangsweise bei JSP vorschlagen?

      Wenn Manipulation des Ausgabepuffers "nötig" wird, halte ich erst mal, egal in welcher Sprache, den Scriptaufbau für überdenkenswert ...

      Was stört dich an GZip-komprimierten Inhalten?

      Einen schönen Donnerstag noch.

      Gruß, Mathias

      --
      ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
      debian/rules
      1. hi,

        Wenn Manipulation des Ausgabepuffers "nötig" wird, halte ich erst mal, egal in welcher Sprache, den Scriptaufbau für überdenkenswert ...

        Was stört dich an GZip-komprimierten Inhalten?

        *g*

        Gut, aber das ist ein Fall, der nichts mit dem Scriptabluaf an sich zu tun hat - und auf diesen zielte ja mein Einwand.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }