2011-02-02 12 views
0

My Wicket WebアプリケーションにFlash(* .swf)FLVプレーヤーが含まれています。次のコード:JavaScriptのリソースフォルダと同等のJavaは何ですか?

final String script = "var swfVersionStr = '10.0.0';" 
    + "var xiSwfUrlStr = 'playerProductInstall.swf';" 
    + "var flashvars = {file:'/proj/resources/video.flv'};" 
    + "var params = {};" 
    + "params.wmode = 'transparent';" 
    + "params.quality = 'high';" 
    + "params.allowscriptaccess = 'sameDomain';" 
    + "params.allowfullscreen = 'true';" 
    + "var attributes = {};" 
    + "attributes.id = 'test';" 
    + "attributes.name = 'test';" 
    + "attributes.align = 'left';" 
    + "swfobject.embedSWF('/proj/resources/mediaplayer.swf', 'movieDiv', '640', '480', swfVersionStr, xiSwfUrlStr, flashvars, params, attributes);" 
    + "swfobject.createCSS('#flashContent', 'display:block;text-align:left;');"; 

add(new AbstractBehavior() { 
    public void renderHead(IHeaderResponse response) { 
     super.renderHead(response); 
     response.renderOnLoadJavascript(script); 
    } 
}); 

FLVを再生します。 swfobject.jsファイルは、私のサーバーのリソースフォルダに置かれます。 localhostでテストしているので、リソースフォルダの絶対パスは/home/tapas/Desktop/proj/work/Jetty_0_0_0_0_80_proj.war__proj__qk44r3/webappです。今、Javaを使用してサーバーのリソースフォルダにファイルを保存するにはどうすればよいですか? JavaScriptは、リソースフォルダのパスを/proj/resources/と識別します。 Javaにおけるこのパスの同等の表現は何ですか?私は試しました:

try{ 
    File file=new File("/proj/resources/joymaa.txt"); 
    if(file.exists()){ 
     System.out.println("File exists"); 
    }else{ 
     System.out.println("File does not exists"); 
    } 
}catch(Exception exception){ 
    System.out.println(exception.getMessage()); 
} 

これはエラーメッセージを表示していませんが、「ファイルが存在しません」と表示されています。

+1

これでは、JavaScriptとは全く関係ありません。 – Pointy

答えて

0

あなたの実際の作業ディレクトリを調べてみてください... example JavaScriptはjavascriptとは別のディレクトリから実行されるため、Javaが相対パスを理解できるとは思いません。ただ私の意見ですが、試してみてください。

1

絶対ファイルパスを使用してWARファイル内のリソースを検索しないことをお勧めします。

Javaアプリケーションにリソースが必要な場合は、CLASSPATHに入れてサーブレットコンテキストのgetResourceAsStream()を使用して読み取り用のInputStreamを取得するのが最適です。

0

((のWebApplication)getApplication())。のgetServletContext()。getRealPath( "/リソース/ビデオ/ XML/video.xml")