1

我是 Struts 2 的新手。现在在一个 Web 项目中开发一个画廊页面。因为我必须在没有页面加载的情况下在弹出窗口中显示图像/音频/视频文件。我成功地在图像和视频文件中正常工作,但不是音频文件。我的struts动作如下。

<action name="download" class="com.mkyong.common.action.DownloadAction">
 <result name="success" type="stream">
  <param name="contentType">application/octet-stream</param>
  <param name="inputName">fileInputStream</param>
  <param name="bufferSize">256</param>
 </result>
</action>

我的课程文件是

try {
fileInputStream = new FileInputStream(new File("E:\\ESS_GALLERY\\2451252452\\Gallery\\Audios\\audio_2.wav"));
    } catch (Exception e) {
        e.printStackTrace();
}

而jsp(HTML)代码是

<object id='tempAud1' name="emQTPlayer" height="45px" width="120px"
    style="behavior: url(#BinaryBehaviorID)"
    codebase="http://www.apple.com/qtactivex/qtplugin.cab"
    classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B">
    <param name="autoplay" value="false" />
    <param name="src"
        value="<s:property value="mediaAud[0].fileLocation"/>" />
    <param name="controller" value="true" />
    <param name="type" value="video/quicktime" />
    <param name="align" value="bottom" />
    <param name="border" value="0" />
    <%--<param name="wmode" value="transparent">--%>
    <param name="showcontrols" value="true">
    <embed id='tempAud2' name="emQTPlayer" type="video/quicktime"
        autoplay="false" height="45px" width="120px" align="top" border="0"
        controller="true" postdomevents="true"
        pluginspage="http://www.apple.com/quicktime/download/"
        showcontrols="true" src='' />
</object>

. 在那我将在 onclick 事件中设置 src ......

4

2 回答 2

2

通过如下更改内容类型参数..

<action name="download" class="com.mkyong.common.action.DownloadAction">
        <result name="success" type="stream">
          <param name="contentType">audio/mpeg</param>
          <param name="inputName">fileInputStream</param>
          <param name="bufferSize">256</param>
        </result>
    </action>

这适用于音频文件....

于 2013-01-22T06:46:15.087 回答
0

您不提供<embed>object 的来源是否正常?

尝试将其更改为

<embed id='tempAud2' name="emQTPlayer" type="video/quicktime"
    autoplay="false" height="45px" width="120px" align="top" border="0"
    controller="true" postdomevents="true"
    pluginspage="http://www.apple.com/quicktime/download/"
    showcontrols="true" src='<s:property value="mediaAud[0].fileLocation"/>' />
于 2013-01-18T14:20:13.833 回答