0

私は以下の構造を持つライブラリを使用しています

ここに画像の説明を入力

vn.hus.nlp.tokenizer-4.1.1.jarファイルをライブラリに追加Add JAR/Folderし、残りをプロジェクトにコピーしています。Javaアプリケーションを使用すると機能します。しかし、サーブレットを試してみると、このライブラリを使用すると問題が発生しました。

私のプロジェクト

ここに画像の説明を入力

サーブレット: クラスFilterは HttpServlet を拡張します

try {          
       VietTokenizer v = new VietTokenizer(); // error here !
       JSONObject jso=new JSONObject();
       jso.put("status","A");
       jso.put("label","true");
       out.print(jso);
    } finally {            
        out.close();
    }

ログ

SEVERE: Servlet.service() for servlet [Filter] in context with path [/BadwordFilter] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: org.apache.commons.cli.ParseException
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
    at badword.filter.Filter.processRequest(Filter.java:51)
    at badword.filter.Filter.doGet(Filter.java:74)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

json-simple-1.1.1.jar is work well. ありがとう!

4

2 に答える 2

1

commons-cliライブラリがありません。たとえば、lib フォルダーのアーカイブに含まれています。

https://code.google.com/p/vntagger-gate-plugin/source/browse/lib/vn.hus.nlp.tokenizer-4.1.1.jar

最初のライブラリを追加したのと同じ方法で追加できます。

于 2013-10-01T09:43:40.337 に答える
1

Web プロジェクトを右クリックし、 Librariesを選択して、デプロイ時にライブラリがライブラリにインポートされないと思います。Complieタブで、ライブラリがチェックされていることを確認してください!

于 2013-10-01T15:13:09.390 に答える