[Allegro] Altes von Janas

Thomas Berger ThB at Gymel.com
Fr Okt 14 09:58:14 CEST 2011


Lieber Herr Eversberg,

> Wir haben in einem ersten Durchgang mal folgende Punkte bearbeitet
> bzw. auch noch nicht, janas.lzh liegt unter ftp bereit:

vielen Dank fuer die Wiederbeschaeftigung mit Janas

>> 2.
>> htmform.flx, jax.htm funktionieren nicht mehr.
>> Es scheint so (Windows 7 x64), dass man im Flex stets das Janas-Fenster
>> mit "janas 0" abschiessen muss, sonst fuehrt ein erneuter Aufruf
>> "janas ..." fast immer zu einer Browser-Fehlermeldung
>>
> htmform.flx wird in dem Sinne geändert, dann klappt es.

Das ist aber nur eine Uebergangsmassnahme?


>> Es ist ziemlich irritierend, dass in Janas die Shortcuts Strg-C,
>> Strg-V und Strg-A nicht aktiviert sind.
>>
> Strg+c geht nicht, +a geht, +v macht keinen Sinn.

D.h. Kopieren aus Janas waere nach Ihrer Meinung moeglicherweise
sinnvoll, Pasten in ein Eingabefeld jedoch nicht? Hm.


>> 5.
>> Ich hatte einige Links mittels der in janas.htm beschriebenen Form
>> <a href="flex:x befehlsfolge">  angelegt (einige 'var' und 'ins',
>> um mehrere Werte ohne Formular zu uebertragen), auf Position 64
>> kam dann in a99 dann nicht "ins #uab" sondern "ins#uab" an, das
>> ist also derzeit nicht brauchbar.
>>
> Position 64 wo?

In der entsprechenden Zeile der von Janas produzierten .flx-Datei.



>> 7.
>> Beobachtung:
>> mit<input type="text" name="$Abc" ...>  lassen sich auch $-Variable
>> setzen, weil der von janas generierte Flex aber typischerweise an
>> andere Flexe weiterleitet, nur die mit den Grossbuchstaben. Allerdings
>> pflastert Janas grosszuegig mit Spatien, so dass in a99 am Anfang
>> der $-Variablen ein paar ueberfluessige Leerzeichen zu stehen kommen.
>>
> Geben Sie das Beispiel mal vollständig an.
	

HTML-Quelltext ist sinngemaess (wird live per xslt aus .xml-Daten
gebaut):

<form action="flex:X%20scrapeoai.flx@" method="post" name="proceedForm"
onsubmit="return false;">


<td class="value">Cursor 0<br><input type="hidden" name="uRT"
value="!r1226!x1226!mmabxml!styp-obj:w!c50!t1318579180"><input type="button"
name="uegal" value="Resume" onclick="this.form.uRS.value='ok';RTsubmit();">

<input type="checkbox" name="uAH" value="On" checked></p>
<input type="hidden" name="uRL"
value="http://hansdemo.gymel.com/cgi-bin/oai-hansdemo.cgi">
<input type="hidden" name="uSF" value="50">
<input type="hidden" name="uFO" value="proceedForm">
<input type="hidden" name="uPR" value="">
<input type="hidden" name="uRS" value="">
<input type="hidden" name="$Parsed" id="escapeddata" value="">
<input type="hidden" name="ucc" value="Schmutz">
</form>

(das Feld $Parsed wird durch einen onsubmit-Handler dann mit dem
Inhalt eines Textareas angefuellt, wobei CF/LF durch "^J" ersetzt werden)



Das kommt in j<nummer>.flx an (hans.cfg t3,k5):

set U2
#uRT    !r1226!x1226!mmabxml!styp-obj:w!c50!t1318579841
#uRL    http://hansdemo.gymel.com/cgi-bin/oai-hansdemo.cgi
#uSF    50
#uFO    proceedForm
#uPR
#uRS    ok
$Parsed    #003 w26702^J#004 20020522092630^J...
#ucc    Schmutzÿÿÿ
set U0
exec X scrapeoai.flx

Hinter jedem Feldnamen also fuenf Spatien, bei #-Kategorien und
Anwendervariablen werden die durch die ueblichen Zuweisungsmechanismen
gefressen (ausser wohl bei #u1 und #u2), bei $Parsed nicht.
Halte ich aber fuer kein Problem, ich wollte nur darauf hinweisen.



>> 8.
>> Formulardaten (etwa in textareas) koennen Zeilenumbrueche enthalten,
>> janas setzt vor die erste Zeile den Variablennamen, und eliminiert
>> Durchschuesse. Das mag ganz nett sein in der Beispielanwendung, wo
>> der Benutzer Kategorienummern plus Inhalte in ein Textarea schreibt,
>> fuer beliebige Eingaben (die in einer $-Variablen landen koennen
>> und sollen) macht es das aber sehr umstaendlich: Das eigentliche
>> Textarea muss aus dem Formular herausgehalten werden, das Submit
>> im Formular muss dann durch einen Event-Handler geleitet werden, der
>> \r\n durch "^J" ersetzt, in a99 dann erfolgt die umgekehrte Behandlung
>> mittels "ins _^~J_^J_".
>>
> Das wird schwierig sein.

Mit "muss" war hier der potentielle Anwender gemeint, nicht die
Entwicklungsabteilung. Bzw. ich "musste" das so regeln, vielleicht
faellt jemandem etwas guenstigeres dazu ein...

Alternativ muesste eine Zuweisungssyntax erlaubt werden, die
auch Zeilenumbrueche zulaesst (also die beruehmten "Here-Dokumente",
bekannt aus Shells und den meisten Programmiersprachen):

$Parsed=<<"EndOfText";
#003 w26755
#004 20020606121406
#007 20020606121527

#003 w26760
#004 20020619120102

#003 w26719
#004 20020523122515
#007 20020531114614
EndOfText




>> 9.
>> Das oben beschriebene Wechselspiel von a99 und janas ist wegen der
>> Macke bei 2 derzeit nicht optimal,
> wie gesagt, leicht behebbar.

Natuerlich habe ich den Flex mit "janas 0" gepflastert, damit
ueberhaupt irgendetwas funktionierte. Aber, um das in Erinnerung
zu rufen, der Flex laedt eine Portion Datensaetze aus einem
OAI-Repository, wirft das Janas als "Dokument" hin, das beim
laden dann XSLT anwendet und das gewuenschte im ADT-Format in
ein Textarea setzt. Per onload-Handler wird dann das Formular
automatisch abgeschickt, d.h. die adt-Daten werden dem Flex
uebergeben, der sie wegspeichert und direkt anhand des resumption-
Tokens die naechste Datenportion erntet. Und so weiter bis zum
Ende: Da gibt es dann ziemliche Unterschiede zwischen dem
eigentlich beabsichtigten Fall und dem mit "janas 0", wo staendig
Fenster auf- und zuklappen.



>> 10.
>> (Derzeit) typisch fuer Janas-Nutzung sind ja oft on-the-fly
>> durch a99 produzierte HTML-Dateien (irgendwie muessen die
>> konkreten Datensaetze ja in die Browser-Umgebung transportiert
>> werden), insofern ist es unguenstig, dass ohne Pfad angegebene
>> Dateien in einem Unterverzeichnis der Programmverzeichnisses
>> gesucht werden: Man ist im Flex auf sich allein gestellt, aus
>> dem Pfad eine file-URL fuer Janas herzustellen:
>>
>> var "file:///" W "/oaitemp.xml"
>> ins _:\\_|\\_
>> ins _\\_/_
>> janas
>>
> In welchem FLEX?

Der Flex, der mit "janas" endet, also derjenige, der das
Dokument vorbereitet und janas den Ort irgendwie mitteilen
muss...


>> 11.
>> Eine Frage: Hat jemand in Janas schon einmal ausprobiert, ob AJAX-
>> Ansaetze oder jQuery funktionieren: Also vor allem ob auch da
>> XMLHTTPRequest-Objekt mit flex-URLs umgehen kann?
>>
> Ein solche Request wird an einen Webserver gerichtet. FELX-URLs
> versteht der aber nicht! Wo wäre also der Sinn?

Das XMLHTTPRequest-Objekt ist die Grundlage aller AJAX-Techniken.
Es wird ueber seine oeffentlichen Methoden angesprochen. Vorne stopfe
ich eine URI hinein, und was dann passiert, interessiert nicht.
In einer spaetern Mail habe ich aber m.E. schluessig nachgewiesen,
dass es wohl mit Flex-URIs nicht funktioniert bzw. aufgrund des
"Halbduplex"-Kommunikationsmodells von Janas nie funktionieren kann.
Insofern halte ich Janas auch fuer eine nicht recht brauchbare
Kruecke, deren Weiterentwicklung sich eigentlich nicht lohnt.


viele Gruesse
Thomas Berger



Mehr Informationen über die Mailingliste Allegro