0

私は以下のようなクラスを持っています:

public class JSemcorProcessor {

IConcordanceSet semcor;
String[] directories = { "brown1", "brown2", "brownv" };

public JSemcorProcessor() throws MalformedURLException {
    // construct the URL to the Semcor directory
    String path = "./files/semcor3.0/";
    URL url = new URL("file", null, path);

    // construct the semcor object and open it
    semcor = new Semcor(url);
    semcor.open();
}

public static void main(String[] args) throws IOException, ParseException {

    JSemcorProcessor jsp = new JSemcorProcessor();
    SynsetGraph graph = jsp.startOne("br-a06");

}
.......
}

main() を呼び出すとうまく機能します。しかし今、私はこのクラスをアプレットで使用したいと考えています:

public void init() {

    JSemcorProcessor jsp = null;
    SynsetGraph graph = null;
    try {
        jsp = new JSemcorProcessor();
        graph = jsp.startOne("br-a06");
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } 
........
}

そのような例外が発生します:

java.lang.IllegalArgumentException
    at edu.mit.jsemcor.main.Semcor.<init>(Semcor.java:105)
    at edu.mit.jsemcor.main.Semcor.<init>(Semcor.java:90)
    at edu.mit.jsemcor.main.Semcor.<init>(Semcor.java:77)
    // semcor = new Semcor(url);
    at edu.njit.tagging.JSemcorProcessor.<init>(JSemcorProcessor.java:40)
    // jsp = new JSemcorProcessor();
    at org.jgrapht.demo.JGraphAdapterDemo.init(JGraphAdapterDemo.java:157)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

main() で機能する同じコードがアプレットで機能しないのはなぜですか? Semcor では URL オブジェクトがこの問題を引き起こしているようです。

ありがとう。

4

0 に答える 0