Hallo,
kennt jemand die Lösung für folgendes Problem:
Ein Java-Agent soll unter anderem aus einer PostScript-Datei eine PDF-Datei erzeugen. Dafür nutze ich Ghost4j. Hier der verwendete Code:
public class JavaAgent extends AgentBase {
public void NotesMain() {
//get Ghostscript instance
Ghostscript gs = Ghostscript.getInstance();
System.out.println("nach Ghostscript gs = Ghostscript.getInstance();...");
//prepare Ghostscript interpreter parameters
//refer to Ghostscript documentation for parameter usage
String[] gsArgs = new String[10];
try {
gsArgs[0] = "-ps2pdf";
gsArgs[1] = "-dNOPAUSE";
gsArgs[2] = "-dBATCH";
gsArgs[3] = "-dSAFER";
gsArgs[4] = "-sDEVICE=pdfwrite";
gsArgs[5] = "-sOutputFile=c:\\reports\\input4.pdf";
gsArgs[6] = "-c";
gsArgs[7] = ".setpdfwrite";
gsArgs[8] = "-f";
gsArgs[9] = "c:\\reports\\input4.ps";//input file name
} catch(Exception e) {
e.printStackTrace();
System.out.println("ERROR: " + e.getMessage());
return;
}
//execute and exit interpreter
try {
System.out.println("vor gs.initialize(gsArgs);...");
gs.initialize(gsArgs);
System.out.println("nach gs.initialize(gsArgs);...");
gs.exit();
System.out.println("nach gs.exit();...");
}catch (GhostscriptException e) {
System.out.println("ERROR: " + e.getMessage());
return;
}
}
}
Auf meinem Entwicklungsrechner(Notes9.01) funktioniert es einwandfrei. Auf zwei weiteren Test-Rechnern(Note8.53 und Notes9.01) erhalte ich folgende Fehlermeldung:
Exception in thread "AgentThread: JavaAgent" java.lang.IllegalArgumentException: Callback method is inaccessible, make sure the interface is public: public abstract int org.ghost4j.GhostscriptLibrary$stdout_fn.callback(com.sun.jna.Pointer,java.lang.String,int)
at com.sun.jna.CallbackReference$DefaultCallbackProxy.<init>(CallbackReference.java:367)
at com.sun.jna.CallbackReference.<init>(CallbackReference.java:143)
at com.sun.jna.CallbackReference.getFunctionPointer(CallbackReference.java:332)
at com.sun.jna.CallbackReference.getFunctionPointer(CallbackReference.java:314)
at com.sun.jna.Function.convertArgument(Function.java:496)
at com.sun.jna.Function.invoke(Function.java:258)
at com.sun.jna.Library$Handler.invoke(Library.java:216)
at $Proxy0.gsapi_set_stdio(Unknown Source)
at org.ghost4j.Ghostscript.initialize(Ghostscript.java:323)
at JavaAgent.NotesMain(JavaAgent.java:92)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
Ich kann mir den Fehler überhaupt nicht erklären. Bitte helft.
Danke im Voraus
Grüße
Andreas