1

私は、WindowsプラットフォームでTomcatを使用してNetbeansを使用してビデオ共有Webアプリケーション(youtubeなど)を開発してきました。そこで、ビデオがアップロードされたらすぐにビデオファイルのサムネイル画像を生成したいと思います。ネットを検索すると、Xuggleというものが見つかりました。XugglerをTomcatのlibフォルダーにインストールしました。必要な環境変数を設定しました。Javaアプリケーションだけを実行すると結果が得られますが、Java Webアプリケーションで同じことを実行すると、次のエラーが発生します。

    HTTP Status 500 -

    type Exception report

    message

    description The server encountered an internal error () that prevented it from         

    fulfilling this request.

    exception

    javax.servlet.ServletException: Servlet execution threw an exception


 org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
    root cause

 java.lang.UnsatisfiedLinkError: com.xuggle.xuggler.XugglerJNI.Global_NO_PTS_get()J
com.xuggle.xuggler.XugglerJNI.Global_NO_PTS_get(Native Method)
com.xuggle.xuggler.Global.<clinit>(Global.java:240)
xugglerPack.Main.<clinit>(Main.java:43)
xugglerPack.VT.processRequest(VT.java:86)
xugglerPack.VT.doPost(VT.java:137)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:3
  93)
   note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26   
 logs.

================================================== =========================================

@ pd40 >>> Xugglerを再インストールしました(今回はC:\ Program Filesで、インストール後にPCを再起動しました。環境変数に次のように設定しました:

XUGGLE_HOME = C:\ Program Files(x86)\ Xuggle

CLASSPATH =。;C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ commons-cli.jar; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ logback-classic.jar; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ logback-core.jar; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ slf4j-api.jar; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ xuggle-xuggler.jar; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib \ xuggle-xuggler-test.jar;

PATH = C:\ Program Files(x86)\ Xuggle \ bin; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ bin; C:\ Apache Tomcat 6.0.26 \ Apache Tomcat 6.0.26 \ lib; C :\ Program Files(x86)\ Xuggle \ lib

Xuggle / java / jarsのjarファイル(6つのjarファイル)をTomcatの\ libフォルダーにコピーし、それらのCLASSPATHを設定しました。

Webアプリケーションでこれを行うと、まだ問題が発生しますが、スタンドアロンのJavaアプリケーションは画像を適切に生成します。何が問題になっていますか?ビデオをアップロードするとアップロードされますが、サムネイル画像が生成されない場合、次のエラーが発生します...

  HTTP Status 500 -

  type Exception report

  message

  description The server encountered an internal error () that prevented it from     
  fulfilling this request.

  exception

  javax.servlet.ServletException: Servlet execution threw an exception
  root cause

  java.lang.NoClassDefFoundError: Could not initialize class com.xuggle.ferry.FerryJNI
  com.xuggle.ferry.RefCounted.acquire(RefCounted.java:179)
  com.xuggle.xuggler.IContainer.copyReference(IContainer.java:80)
  com.xuggle.mediatool.AMediaCoderMixin.<init>(AMediaCoderMixin.java:68)
  com.xuggle.mediatool.MediaReader.<init>(MediaReader.java:137)
  com.xuggle.mediatool.ToolFactory.makeReader(ToolFactory.java:77)
  xugglerPack.Main.main(Main.java:51)
  xugglerPack.VT.processRequest(VT.java:87)
  xugglerPack.VT.doPost(VT.java:135)
  javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
  javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
  note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26    
  logs.
4

1 に答える 1

0

Xuggler lib を Windows のPATHまたはLD_LIBRARY_PATHに入れてください。

Tomcat ネイティブに似ています。これを試したことがあると思います。

このスレッドも参照してください。

于 2012-09-22T11:38:56.033 に答える