Hi,ich versuche derzeit von Share über das "remote"-Objekt Postdaten an ein Alfresco Webscript (Java Backed) zu schicken.Das Backend Webscript ist in einer preset-site.post.desc.xml wie folgt deklariert:
<webscript>
<shortname>Preset Site</shortname>
<description></description>
<url>/preset/site</url>
<format default="json">argument</format>
<authentication>user</authentication>
<transaction>required</transaction>
</webscript>
Das Webscript ist Spring-Context vorhanden und soll zunächst nur die mitgelieferten POST Parameter ausgeben:
package de.mypackage
import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptRequest;
import java.util.HashMap;
import java.util.Map;
public class PresetProgramWebscript extends DeclarativeWebScript {
@Override
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache) {
for (String header : req.getHeaderNames()) {
System.out.println("HEADER-Key: " + header);
System.out.println("HEADER-Value: " + req.getHeader(header));
}
System.out.println("———————————-");
for (String param : req.getParameterNames()) {
System.out.println("PARAM-KEY: " + param);
System.out.println("PARAM-Value: " + req.getParameter(param));
}
System.out.println("———————————-");
System.out.println("———————————-");
return new HashMap<String, Object>();
}
}
Wenn das Webscript mit seiner URL und CURL aufgerufen wird, können mitgegebene POST-Parameter aufgelesen werden und werden wie erwartet dargestellt.Wird das Script jedoch von einem Share Webscript mit remote aufgerufen:
var connector = remote.connect(endpoint);
connector.post("/preset/site", myData);
so erscheint in der Parameterausgabe lediglich ein Parameter "ALF_TICKET". Der Inhalt von myData (ist ein JSONString) fehlt komplett.Hat jemand eine Idee was schief läuft? Stimmt die Authentifikation nicht?Ergänzend:Kurios finde ich auch, lege ich parallel zum Java Webscript im Backend noch ein JS-Webscript wird dieses ebenfalls aufgeführt (nach dem Java Webscript) und ich kann in diesemdie daten von "myData" auslesen.