Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

Online-Repositories für Scripting-Plugins

 
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 14:33 Uhr  ·  #1
Eigentlich wollte ich jetzt erst einmal ein selber gebautes Scripting-PlugIn testen um Erfahrungen mit dem Umgang von integrierten HTMLUnits zu machen.

Aber hier bringt Jameica mir schon einen nicht einleuchtenden Fehler:
(Jameica in Version 2.4.0 oder in 2.5.0, beide getestet)

Das zip für das Scripting-PlugIn wurde laut Anleitung im Wiki aufgebaut und beim Installieren über den PlugIn-Menüpunkt in Jameica erscheint immer dieser Eintrag in der LOG:

Code
[ERROR][de.willuhn.jameica.plugin.ZippedPlugin.<init>] <Pfad>\test.zip contains invalid file test.js

Umbennen des JS-Files bringt nichts und wenn ich es lösche kommt prompt die Meldung:

Code
[ERROR][de.willuhn.jameica.plugin.ZippedPlugin.<init>] <Pfad>\test.zip contains invalid file plugin.xml

beim Installieren.

Müssen diese Dateien in einer Bestimmten Codierung vorliegen oder wird hier der gleich der Inhalt geprüft? (bei der JS-Datei eher fragwürdig)
An der Komprimierung der ZIP liegt es nicht, schon getestet (sonst bringt er den Fehler "bad compression method" und er findet ja auch die Dateien)


Wenn ich den Inhalt der Zip (Aufbau genauso wie im Wiki) im Zip nochmal ein einem Unterordner habe (wie z. B. beim Jameica.Scripting Plugin) dann bringt er einfach logischerweise die Meldung:

Code
[ERROR][de.willuhn.jameica.plugin.ZippedPlugin.<init>] plugin zip-file empty




bitte um Hilfe Olaf

danke


Inhalt der plugin.xml

Code
<?xml version="1.0" encoding="ISO-8859-1"?>
 
<plugin name="test" version="2.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation="http://www.willuhn.de/schema/jameica-plugin-1.3.xsd">
 
  <description>Test Script</description>
  <homepage>http://www.onlinebanking-forum.de/phpBB2/viewtopic.php?t=15404</homepage>
  <license>GPL - http://www.gnu.org/copyleft/gpl.html</license>
 
  <requires jameica="2.4.0+">
    <import plugin="jameica.scripting" version="2.3.0+" />
    <import plugin="hibiscus" version="2.4.0+" />
  </requires>
 
  <messaging>
    <message queue="jameica.scripting.add">
      <![CDATA[
        ${manifest.pluginDir}/test.js
      ]]>
    </message>
  </messaging>
</plugin>
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 22:41 Uhr  ·  #2
Der Fehler ist, dass die Dateien nicht direkt auf oberster Ebene in der ZIP-Datei liegen muessen sondern in einem Ordner, der sinnvollerweise identisch mit dem Namen des Plugins ist. Also lege einen Ordner "test" an, tu dort deine Dateien rein und zippe dann den Ordner "test". Also so:

Code

test.zip
  |
  +- test (Ordner)
        |
        + deine Dateien
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 22:42 Uhr  ·  #3
Aber du hast Recht. Im Wiki ist das falsch beschrieben - ich fixe das.
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 23:05 Uhr  ·  #4
ich zitiere mich mal selbst da ich mir sicher war, dass ich dies schon gemacht hatte, aber werde es natürlich nochmals probieren:

Zitat
Wenn ich den Inhalt der Zip (Aufbau genauso wie im Wiki) im Zip nochmal in einem Unterordner habe (wie z. B. beim Jameica.Scripting Plugin) dann bringt er einfach logischerweise die Meldung:

Code
[ERROR][de.willuhn.jameica.plugin.ZippedPlugin.<init>] plugin zip-file empty
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 23:13 Uhr  ·  #5
Dann stimmt da noch irgendwas an der Ordner-Struktur nicht. Ich hab unter http://www.willuhn.de/download/test.zip mal ein Minimal-Beispiel-Plugin abgelegt, welches sich mit Jameica 2.5 ueber Datei->Einstellungen->Plugins installieren laesst.
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 23:52 Uhr  ·  #6
so danke, jetzt klappts natürlich ... muss da .zip oder so am Ordner übersehen haben und mac haut einem ja auch noch haufen unsichtbare dateien mit rein


Aber wenn ich jetzt mehrere Scripting-Plugins erstelle die HTMLUnit enthalten dann liegen die 12MB von HTMLUnit ja auch sozusagen mehrfach dort im PlugIn-Verzeichnis rum ... hmm
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 09.04.2013 - 23:59 Uhr  ·  #7
Ja, die Problematik mit den mehrfachen HTMLUnit-Versionen ist mir bekannt. Ein anderer User hat sich da auch schon dran versucht, hier unterschiedliche Versionen unter einen Hut zu bringen. Eine brauchbare Loesung gibts dafuer nicht. Die sauberste Loesung waere, wenn alle Scripts mit der selben HTMLUnit-Version laufen. Dann koennte man ein Plugin "jameica.htmlunit" bauen, welches lediglich die Jar-Dateien enthaelt und als Abhaengigkeit in den "plugin.xml" der eigentlichen Scripting-Plugins definiert ist. Dann koennten sich mehrere Scripting-Plugins diese Jars teilen.
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 10.04.2013 - 00:39 Uhr  ·  #8
hab ich mir auch schon so überlegt und werde es dann wahrscheinlich auch so umsetzten

danke
kalinrow
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 11
Dabei seit: 04 / 2013
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 10.04.2013 - 13:04 Uhr  ·  #9
Hallo Olaf,
das mit der zentralen HTMLUnit wäre echt super. Das würde Versionsproblem zumindest eindämmen. Immer solange, bis du die HTMLUnit aktualisierst. Ich habe auch schon so wilde Konstrukte probiert, wie die jar zur Laufzeit in das Javaskript einzubinden. Das geht zwar prinzipiell, ist aber erstes ein Heiden-Aufwand und macht dann zweites die Erstellung der Objekte im Skript zu einer echten Herausforderung. Ich hab das dann nach ein paar Tagen wieder aufgegeben.

@thedudge: auf http://progs.frankmuenster.de/hibiscus-skripte/download findest du fertige Plugins für zwei meiner Skripte. Vielleicht helfen die dir ja weiter. Ich hab auch noch irgendwo ein Skript zum Signieren der Dinger, falls du daran auch Interesse hast. Da hat Olaf mir schon weitergeholfen.

Grüße,
Frank
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 10.04.2013 - 14:47 Uhr  ·  #10
@kalinrow
hallo,

ein Globales HTMLUnit-PlugIn habe ich vorhin gerade erstellt und wird mit der Version 2.0.0 Online gehen (dann auch mit Online-Update-Funktion von Jameica)
Somit ist die Zeit der Zusammenbauerei vorbei denn es kann das Script/die Scripte ganz einfach in Jameica installiert werden.

danke erstmal für deine Version werde ich mir gleich mal anschaun ...

dann wird nun alles besser ;)
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 10.04.2013 - 19:36 Uhr  ·  #11
@kalinrow

so extra für dich ;) hab ich nun eine erweiterte Version der Proxy-Unterstützung (basierend auf der Jameica Proxy-Konfiguration) eingebaut. Diese allerdings im Moment ohne User und Passwort da dies ja in Jameica nicht hinterlegt ist und es soll ja für die Allgemeinheit gültig sein.

*** Online und SSL ***
Danke für das Angebot mit dem Signieren, wobei mir sich hier nicht ganz der nötige Hintergrund erschließt. Bei solchen Paketen werden doch keine sensiblen Daten übertragen?!

Ein SSL-Paket für meine Domain würde mich 3,50€ im Monat kosten (wobei 3,00€ davon nur für den Webspace sind, also effektiv 0,50€ pro Monat)

Nur hab ich nun gesehen du betreibst ja auch schon ein eigenes Repository, da ich dir eigentlich anbieten wollte deine Pakete mit in meins zu nehmen um hier ein einheitliches für alle Banking-Scripte zu schaffen und es den Usern zu erleichtern.
Das werd ich dann wohl vergessen können ;) oder? ;)

Wäre so eine tolle Idee gewesen. Endlich alles über Jameica installieren, inklusive einer einheitlichen globalen Version von HTMLUnit.

Aber mal schaun ...
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 10.04.2013 - 23:42 Uhr  ·  #12
BTW: Mich freut uebrigens, dass ihr euch da direkt miteinander abstimmt. Ich selbst blicke bei den inzwischen bereits existierenden Scripts naemlich schon nicht mehr durch. ;)
Liegt aber auch daran, weil ich das selbst eigentlich nicht nutze. Mir reicht HBCI.
kalinrow
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 11
Dabei seit: 04 / 2013
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 11.04.2013 - 08:22 Uhr  ·  #13
@Olaf: Kein Problem, das schaffen wir schon irgendwie...
Aber hast du mir nicht Letztes geschrieben, das du eines meiner Skripte verwenden kannst, weil du da ein Konto hast, oder hab ich da was falsches im Kopf :noidea:.

Ein zentrales Skript-Repository ist zwar ein gute Idee, aber ich denke das wird nicht so einfach einzurichten sein. Vor allem, da das Hinzufügen eines Repositories in Jameica ja doch recht einfach ist.

Noch was zum BOS Skript, falls du es noch nicht selbst gefunden hast. Das einzige was nicht mehr 2.10 und höher zu HTMLUnit kompatible ist sind die beiden Aufrufe von WebRequestSettings durch
WebRequest ersetzten:

Code

//alt
//var set = new WebRequestSettings(new java.net.URL(accAddress));

//neu
var set = new WebRequest(new java.net.URL(accAddress));


Grüße,
Frank
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 12.04.2013 - 11:42 Uhr  ·  #14
Zitat geschrieben von kalinrow
@Olaf: Kein Problem, das schaffen wir schon irgendwie...
Aber hast du mir nicht Letztes geschrieben, das du eines meiner Skripte verwenden kannst, weil du da ein Konto hast, oder hab ich da was falsches im Kopf :noidea:.


Ja. Aber auf dem Konto passiert eh nichts. Da benutze ich das hoechstens einmal im Monat ;)
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 17.04.2013 - 18:01 Uhr  ·  #15
Zitat geschrieben von kalinrow
@Olaf: Kein Problem, das schaffen wir schon
Ein zentrales Skript-Repository ist zwar ein gute Idee, aber ich denke das wird nicht so einfach einzurichten sein. Vor allem, da das Hinzufügen eines Repositories in Jameica ja doch recht einfach ist.


jetzt hab ich doch glatt deine Antwort übersehen.

Nein dass war nur so ein Gedanke als Lösung von mir, dass man z. B. auch fremde Scripte in sein Repository mit rein nimmt um eine einheitliche Liste für die Endbenutzer zu schaffen wäre halt ein Schönheitspfiff gewesen (da es ja eh nur ein Link auf das Verzeichnis deines Servers gewesen wäre, dass Plugin incl. Plugin.xml und somit die Versionskontrolle liegt ja trotzdem bei dir)


Mir ging es natürlich viel eher darum uns zu einigen wie wir dass mit einer einheitlichen HTMLUnit unter den Hut bringen können. Denn so wie ich das sehe gibt es jetzt genau zwei, höchstens drei, aktive Script-Entwickler. Und ich hätte es schade gefunden wenn wir uns da nicht verständigen können. Deswegen müsste in einem Repository die HTMLUnit drin sein (was ich jetzt wie angekündigt eingeführt habe) und die anderen müssten einfach darauf verweisen, wie auch immer.


(Oder vielleicht kann ja hier Olav vermitteln ^^ und vielleicht einfach das HTMLUnit-Paket in seine Repository mit rein nehmen. Nur so ein Gedanke, ich hab Sie gern bei mir ;) )
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 17.04.2013 - 23:18 Uhr  ·  #16
Ich mag die HTMLUnit-Libs eigentlich ungern selbst hosten, weil ich dann u.U. in Konflikte gerate, wenn mich ein Script-Entwickler bittet, die Libs auf Version X zu aktualisieren, das aber zu Problemen bei anderen Script-Entwicklern fuehrt und die mich dann wieder anschreiben, um Version Y zu verwenden.
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 18.04.2013 - 07:24 Uhr  ·  #17
Dies ist ja kein Problem, genau aus diesen von dir genannten Gründen und auch so hoste ich dass ganze natürlich lieber selbst.

Da ich aber ein Perfektionist bin widerspricht es mir ungemein in jedes Scripting-PlugIn eine HTMLUnit Version zu packen.

Da ist es viel leichter einfach eine für alle zu haben und auch die einzige Lösung.

In meinen Repository ist dies ja eh schon wie angekündigt umgesetzt und alle anderen Versionen liegen breit und können sofort wie gewünscht und gebraucht übernommen werden.



Adresse der neuen Projekt-Homepage für "Bank of Scotland", "DKB Visa" und "PayPal": http://hibiscus-scripting.derrichter.de

Adresse der Online-Repository für zur Zeit: "Bank of Scotland", "DKB Visa", "PayPal" und HTMLUnit: http://scripting-updates.derrichter.de

Gruss
kalinrow
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 11
Dabei seit: 04 / 2013
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 19.04.2013 - 12:27 Uhr  ·  #18
Aber leider löst 'nur' das Zentralisieren der HTMLUnit das eigentliche Problem ja nicht. Es besteht weiterhin die Gefahr, dass jemand gerne zwei Scripte verwenden möchte, die aber unterschiedliche HTMLUnit Versionen benötigen. Ob diese nun in jedem Plug-In oder einmal zentral geladen werden bleibt dabei gleich.
Wenn dann die HTMLUnit auch noch 'halbautomatisch' aktualisiert wird, sind evtl. sogar Anwender betroffen, die nur ein Skript verwenden, dass aber mit der neuen Version von HTMLUnit nicht mehr läuft.
Klar wird so der Skripterstellen gepusht, das Skript anzupassen, aber der Anwender ist erst mal blockiert und gefrustet. Da wäre es schöner, wenn der Anwender wirklich nur ein Plug-In installieren muss und alles läuft. Leider reichen meine Java(Skript) Kenntnisse nicht aus, um das auch hin zu bekommen. Das sollte man berücksichtigen, wenn man das HTMLUnit zentral macht.

Grüße
Hibiscus-Scripter
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: hibiscus-mashup.de…
Beiträge: 385
Dabei seit: 06 / 2012
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 19.04.2013 - 16:48 Uhr  ·  #19
Zitat geschrieben von kalinrow
Es besteht weiterhin die Gefahr, dass jemand gerne zwei Scripte verwenden möchte, die aber unterschiedliche HTMLUnit Versionen benötigen.


Aber das ist ja genau das Problem wenn ich dass jetzt nicht falsch verstehe (und ja auch Olav bestätigt hat)

Man kann/sollte nicht zwei verschiedene HTMLUnit-Versionen installieren da die sich sonst in die Quere kommen.

Also kann man gar nicht zwei Scripte mit unterschiedlichen Ansprüchen nutzen. Daher ist es natürlich notwendig alle Scripte z. B. im Moment auf min. 2.10 anzupassen (was bei mir und dir ja der Fall ist). Und dies ist ja auch wirklich nicht schwer.
Da helfe ich gerne jeden Entwickler schnell und schmerzlos weiter.

Nur ist es auf alle Fälle redundant in jedes PlugIn die komplette HTMLUnit zu packen die sowieso die gleiche Version sein muss! und von der ja auch nur eine Version verwendet werden darf!
Also ist es einfach sauberer hier eine anzubieten.

Und außer uns beiden gibt es noch einen "aktiven?" Entwickler den ich gerne helfe. Also müssen doch nur wir einen gemeinsamen Nenner finden und der ist bei dir ja bei 2.11

Es kommt natürlich recht oft vor das die Anwender von BoS, DKVVisa und PayPal nicht nur ein der genannten verwenden, da ist es natürlich pflicht diese auf einem gemeinsamen Nenner zu halten. Was bis jetzt ehrlich gesagt auch kein Problem darstellt.

Mein gemeinsamer Nenner ist im Moment mindestens 2.10 wegen einer ASCII-Funktion.
2.11 oder 2.12 sind mir aber genauso recht.


Es kommt mir einfach komisch vor wieso Jameica z. B. wenn jemand PayPal installiert hat und dann ein anderes PlugIn installiert, dann zweimal HTMLUnit laden soll?! ...

Man könnte ja auch z. B. einfach in seine eigene Repository das HTMLUnit-PlugIn von jemand anderen mit rein nehmen, fertig.
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11393
Dabei seit: 03 / 2005
Betreff:

Re: Erstellen von Scripting-PlugIns und Aufbau einer Online-Repo

 · 
Gepostet: 19.04.2013 - 22:38 Uhr  ·  #20
Wegen den Repositories: Ich koennte euch anbieten, das Plugin "jameica.scripting" so zu erweitern, dass es beim ersten Start checkt, ob auch das Plugin "jameica.update" installiert ist. Wenn das der Fall ist, koennte es die URLs eurer beiden Repositories automatisch in unter Datei->Einstellungen->Updates registrieren. Dann ist das fuer die User auch bequemer. Ich braeuchte hierzu nur die URLs eurer Repos. Dann bau ich das ins naechste Nightly-Build mit ein.
Gewählte Zitate für Mehrfachzitierung:   0